[Link]
com/zeltox/Google-Drive-PDF-Downloader
[Link]
let jspdf = [Link]("script");
[Link] = function () {
let pdfDocumentName = "Document";
let doc;
function generatePDF (){
let imgTags = [Link]("img");
let checkURLString = "blob:[Link]
let validImgTagCounter = 0;
for (i = 0; i < [Link]; i++) {
if (imgTags[i].[Link](0, [Link]) ===
checkURLString){
validImgTagCounter = validImgTagCounter + 1;
//[Link](imgTags[i].src);
let img = imgTags[i];
let canvas = [Link]('canvas');
let context = [Link]("2d");
[Link] = [Link];
[Link] = [Link];
//[Link]("Width: " + [Link] + ", Height: " +
[Link]);
[Link](img, 0, 0, [Link], [Link]);
let imgDataURL = [Link]();
// [Link](imgDataURL);
//let ratio;
let orientation;
if ([Link] > [Link]){
//[Link]("Landscape");
orientation = "l";
//ratio = [Link]/[Link]
}else {
//[Link]("Portrait");
orientation = "p";
//ratio = [Link]/[Link]
}
let scalefactor = 1.335;
let pageWidth = [Link] * scalefactor;
let pageHeight = [Link] * scalefactor;
//let imagexLeft = (pageWidth - [Link])/2;
//let imagexTop = (pageHeight - [Link])/2;
if (validImgTagCounter === 1){
doc = new jsPDF({
orientation: orientation,
unit: "px",
format: [pageWidth, pageHeight],
});
[Link](imgDataURL, "PNG", 0, 0, [Link],
[Link]);
}else{
[Link]([pageWidth, pageHeight] , orientation);
[Link](imgDataURL, "PNG", 0, 0, [Link],
[Link]);
}
}
}
pdfDocumentName = pdfDocumentName + ".pdf";
[Link](pdfDocumentName);
}
let allElements = [Link]("*");
let chosenElement;
let heightOfScrollableElement = 0;
for (i = 0; i < [Link]; i++) {
if ( allElements[i].scrollHeight>=allElements[i].clientHeight){
if (heightOfScrollableElement < allElements[i].scrollHeight){
//[Link](allElements[i]);
//[Link](allElements[i].scrollHeight);
heightOfScrollableElement = allElements[i].scrollHeight;
chosenElement = allElements[i];
}
}
}
if ([Link] > [Link]){
[Link]("Auto Scroll");
let scrollDistance = [Link]([Link]/2);
//[Link]("scrollHeight: " + [Link]);
//[Link]("scrollDistance: " + scrollDistance);
let loopCounter = 0;
function myLoop(remainingHeightToScroll, scrollToLocation) {
loopCounter = loopCounter+1;
[Link](loopCounter);
setTimeout(function() {
if (remainingHeightToScroll === 0){
scrollToLocation = scrollDistance;
[Link](0, scrollToLocation);
remainingHeightToScroll = [Link] -
scrollDistance;
}else{
scrollToLocation = scrollToLocation + scrollDistance ;
[Link](0, scrollToLocation);
remainingHeightToScroll = remainingHeightToScroll -
scrollDistance;
}
if (remainingHeightToScroll >= [Link]){
myLoop(remainingHeightToScroll, scrollToLocation)
}else{
setTimeout(function() {
generatePDF();
}, 1500)
}
}, 500)
}
myLoop(0, 0);
}else{
[Link]("No Scroll");
setTimeout(function() {
generatePDF();
}, 1500)
}
};
[Link] = '[Link]
[Link](jspdf);