mLipok

Debenu Quick PDF Library - UDF

141 posts in this topic

#1 ·  Posted (edited)

I would like to present, the UDF for Debenu Quick PDF Library

Getting Started:

http://www.debenu.com/products/development/debenu-pdf-library/getting-started/getting-started-activex-edition/

Function Reference:

http://www.debenu.com/docs/pdf_library_reference/FunctionGroups.php

Useful information:
http://www.quickpdf.org/forum/quickpdf-the-first-steps_topic1242.html

http://www.quickpdflibrary.com/blog/2011/02/the-basics-getting-familiar-with-quick-pdf-library/

First time installing Debenu Quick PDF Library:

You can download demo here:

http://www.quickpdflibrary.com/downloads/quick_pdf_library_demo.exe


Requirements:

  1. file "DebenuPDFLibraryLite1012.dll" or "DebenuPDFLibraryAX1014.dll" must be in @ScriptDir

    if you want to try you must download it from here:
    http://www.debenu.com/products/development/debenu-pdf-library/trial/
    or
    http://www.debenu.com/products/development/debenu-pdf-library-lite/free/
    after install you can find this dll in:
    "c:\Program Files (x86)\DebenuPDF Library\ActiveX\DebenuPDFLibraryAX1014.dll"
    or
    "c:\Program Files (x86)\DebenuPDF Library\Lite\DebenuPDFLibraryLite1012.dll"

    !!! you can change DLL to newer version using _QPDF_NewLibraryPath_Commercial()


    EDIT: actualy (19-06-2015) there is DebenuPDFLibraryAX1115.dll and DebenuPDFLibraryLite1115.dll
     
  2. to use the commercial version you need to use the _QPdf_SetLicenseKey()
  3. AutoIt 3.3.10.2++

For UDF and examples download, and the current version information please go to download section:

 


The following information are outdated

 

 

UDF HowTo/Example:

; first download and unpack "QuickPDF.au3"

; in the directory with your script put the dll files for Lite version:
;       DebenuPDFLibraryLite1012.dll
; in the directory with your script put the dll files for Commercial/Evaluation version:
;       DebenuPDFLibraryAX1014.dll
;
; dll files can be downloaded from the manufacturer of these libraries:
; http://www.debenu.com/products/development/debenu-pdf-library/trial/
; or
; http://www.debenu.com/products/development/debenu-pdf-library-lite/free/
;
; the following code fragment is part of:
; QuickPDF_Examples.au3

#include "QuickPDF.au3" ; use UDF for "Debenu Quick PDF Library"

; using COM Error Handling - Use it only if you do not use your own COM Error Handling.
_QPDF_UseErrorHandler()

; libraries and object initialization is done by:
; _QPDF_CreateObjectAndUnlock($oQP)
; for details please see examples

; Example for Lite version
_QPDF_Example_Lite_HelloWorld()
_QPDF_Example_Lite_OneBigExample()
_QPDF_Shutdown() ; if in the following part of the script you want to open a commercial library then you need to close the lite version

; SET YOUR LICENSE KEY in your main script using _QPDF_SetLicenseKey()
; If you not set $__sLicenseKey_QPDF then DebenuPDFLibraryLite1012.dll will be used (Lite version).
_QPDF_SetLicenseKey('ENTER YOUR KEY HERE')

; All the following examples relate to the commercial or evaluation version of the library - you have to have a LICENSE KEY and use it by using _QPDF_SetLicenseKey('ENTER YOUR KEY HERE')
If $__sLicenseKey_QPDF <> '' Then
    _QPDF_Example_TextAdvance()
    _QPDF_Example_Table()
    _QPDF_Example_A4toA5()
    _QPDF_Example_ExtractText(@ScriptDir & "\Example_HelloWorld.pdf")
    _QPDF_Example_PrintDefault()
    _QPDF_Example_BarCodes(10, 10, 15, '*12345abcde*')
    _QPDF_DeveloperGuide_DrawStyledText()
EndIf

 

Note / Warning:

At the moment (2014-05-14) UDF version is in stable version.
But until a version 1.0 I reserve the right to change the naming of variables and functions.

2014-05-14:

2014/05/14


v0.3
* removed examples from QuickPDF.au3
* added separate file with examples QuickPDF_Examples.au3
* added _QPDF_StartUp()
* added _QPDF_NewLibraryPath_Commercial()
* added _QPDF_NewLibraryPath_Lite()
* __AddLeadingZeros changedt to __QPDF_AddLeadingZeros
* CleanUp
* _QPdf_ changed to _QPDF_
* Function Header - significantly supplemented
* additional comments
* new set of enum constants

!!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
* Lite Function renaming
to change your script you can use:
ClipPut(StringRegExpReplace(ClipGet(),'(?i)(_QPDF)(_Lite)(_.*?)((|R)','$1$3$2$4'))
* all functions which starts with "_QPDF__" now starts with "_QPDF_" it means one less "_"
* _QPDF_FileSplitEachPage added new Parameters $sPDF_Password (as a second not third so $sDestinationDir is moved to third position
* __QPDF_CreateObjectAndUnlock($oQP) change to _QPDF_CreateObjectAndUnlock($oQP) its mean is not internal any more
===================================================

 

2014-05-31:

2014/05/31

v0.4

QuickPDF.au3
* in __QPDF_UnlockKey() - Remarks changed
* in _QPDF_StartUp() fixed: 'If Not FileExists($sDLLFile) Then' removed 'Not'
*  because of this process did not work on systems where the library was not registered using regsvr32.exe.
* in _QPDF_StartUp() added: return values, but their functionality is not yet implemented and described (be expected to change within a week)
* Added: new function: _QPDF_PrintPDFFile([$sPDF_FileFullPath = Default[, $sPDFPassword = ''[, $iDuplex = 1 ]]])
* Added: new function: _QPDF_MergeFiles($sFirstFileName, $sSecondFileName[, $sOutputFileName = Default])

QuickPDF_Examples.au3
*  new example _QPDF_Example_MergeFiles()

 

 

2014/05/31
v0.5
QuickPDF.au3
* FIXED: in _QPDF_PrintPDFFile now printing all pages :) not only the first one :(

 

2014-07-02 NEW VERSION:

2014/07/02
v0.6

QuickPDF.au3
* added: #AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w- 4 -w 5 -w 6 -w 7    and script CleanUp
* added: new function _QPDF_ExtractTextFromStream() - you can use this function when you have data taken from Blob from SQL databese
* added: new parameters _QPDF_NewLibraryPath_Commercial($sLibrary_NewFileFullPath, $sNewClassName, $sNewCLSID, $sNewIID)
* #Region renaming - for better usage in SciTE Jump
* in _QPDF_MergeFiles() -- litle change in $sOutputFileName = Default - add & '_temp.pdf' instead 'temp.pdf'
* Changed: _QPDF_LastErrorCode -- Return Value containg description (string) and @error contain LastErrorCode
* Changed: _QPDF_ExtractTextFromFile    dafult $iExtractOptions = 7 for detail see here : http://www.quickpdf.org/forum/extractfilepagetext-options-0-and-8_topic2929.html
* Removed: some MsgBox
*   Fixed: _QPDF_StartUp() - error checking for DllOpen

QuickPDF_Examples.au3
* added: using new function _QPDF_NewLibraryPath_Commercial()
for this you need DebenuPDFLibraryAX1015.dll
_QPDF_NewLibraryPath_Commercial(@ScriptDir & 'DebenuPDFLibraryAX1015.dll', 'DebenuPDFLibraryAX1015.PDFLibrary', '{5D4196E9-0A7D-48DC-BD2C-7CD3FE771B38}', '{FA7270CF-D774-4A68-8368-2C3179895E0C}')

QuickPDF_Calltip_Generator.au3
* NEW:  use it to generate au3.QuickPDF.calltips.api

 

OLD INFO: Before: 2014-05-05

OLD: Before: 2014-05-05

I'm working on UDF for

http://www.quickpdf.org/

http://www.debenu.com/products/development/debenu-pdf-library/trial/

http://www.debenu.com/products/development/debenu-pdf-library/getting-started/getting-started-activex-edition/

 

For now I'm learning on the basis of examples of documentation:

http://www.debenu.com/products/development/debenu-pdf-library/help/developer-guide/

http://www.debenu.com/docs/pdf_library_developer_guide/debenu_quick_pdf_library_10_developer_guide.pdf

here is what I have:

#include <MsgBoxConstants.au3>
Global $__sClassName = "DebenuPDFLibraryAX1014.PDFLibrary"
Global $__sLicenseKey = "....." ;'SET YOUR LICENSE KEY HERE...

#cs
    C:\Windows\SysWOW64>regsvr32 "C:\Program Files\Debenu\PDF Library\ActiveX\DebenuPDFLibraryAX1014.dll"
    C:\Windows\SysWOW64>regsvr32 "c:\Program Files (x86)\Debenu\PDF Library\ActiveX\DebenuPDFLibrary64AX1014.dll"
#CE

_QPdf_Example_HelloWorld()
_QPdf_Example_PrintDefault()

Func __QPdf_UnlockKey($oQPdf, $sLicenseKey = Default)
    If $sLicenseKey = Default Then
        $sLicenseKey = $__sLicenseKey
    EndIf
    Local $Result = $oQPdf.UnlockKey($__sLicenseKey)
    If $Result <> 1 Then
        MsgBox($MB_SYSTEMMODAL, "info", "Invalid license key. Please set your license key by editing this file.")
    EndIf
    Return $Result
EndFunc   ;==>__QPdf_UnlockKey

Func _QPdf_Example_HelloWorld()
    Local $sFileName = @ScriptDir & "\hello-world.pdf"
    Local $oQPdf = ObjCreate($__sClassName)
    If __QPdf_UnlockKey($oQPdf, $__sLicenseKey) = 1 Then
        ConsoleWrite("Library version: " & $oQPdf.LibraryVersion & @CRLF)
        ConsoleWrite("License Info: " & $oQPdf.LicenseInfo & @CRLF)

        $oQPdf.SetOrigin(1);
        $oQPdf.SetTextSize(20);
        $oQPdf.DrawText(100, 100, "Hello world from AutoIt")
        $oQPdf.SetTextSize(25);
        $oQPdf.DrawText(100, 200, "Hello world from AutoIt")
        $oQPdf.SetTextSize(30);
        $oQPdf.DrawText(100, 300, "Hello world from AutoIt")
        $oQPdf.SetTextSize(60);
        $oQPdf.SetTextColor(0, 0.5, 1);
        $oQPdf.DrawText(100, 400, "Hello world from AutoIt")

        If $oQPdf.SaveToFile($sFileName) = 1 Then
            MsgBox($MB_SYSTEMMODAL, "Info", "File " & $sFileName & " written successfully.")
        Else
            MsgBox($MB_SYSTEMMODAL, "Error", "File " & $sFileName & " could not be written.")
        EndIf
    EndIf
EndFunc   ;==>_QPdf_Example_HelloWorld

Func _QPdf_Example_PrintDefault()
    ; based on Debenu Quick PDF Library 10 Developer Guide.pdf
    ; Standard PDF printing

    Local $sFileName = @ScriptDir & "\hello-world.pdf"

    Local $oQPdf = ObjCreate($__sClassName)
    If __QPdf_UnlockKey($oQPdf, $__sLicenseKey) = 1 Then
        ConsoleWrite("Library version: " & $oQPdf.LibraryVersion & @CRLF)
        ConsoleWrite("License Info: " & $oQPdf.LicenseInfo & @CRLF)

        $oQPdf.LoadFromFile($sFileName, '');

        $iPrintOptions = $oQPdf.PrintOptions(0, 0, "Printing Sample 1")
        $oQPdf.PrintDocument($oQPdf.GetDefaultPrinterName(), 1, 1, $iPrintOptions);

        $iPrintOptions = $oQPdf.PrintOptions(0, 0, "Printing Sample 2")
        $oQPdf.PrintDocument($oQPdf.GetDefaultPrinterName(), 1, 1, $iPrintOptions);
    EndIf
EndFunc   ;==>_QPdf_Example_PrintDefault

EDIT:

First time installing Debenu Quick PDF Library:

 

 

 

 

 

In order to download the current version of the UDF, download the attached file:

QuickPDF.au3.Download.html

QuickPDF.au3.Download.html

 





Edited by mLipok
cleanup
3 people like this

Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites



Great find, I will be using this from now on...

Share this post


Link to post
Share on other sites

Good.

Do you want to make a UDF toogether with me ?


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

Afraid I dont have the skill required :sweating:

Share this post


Link to post
Share on other sites

So maybe you want to be a tester ;)


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

I mean I need to cooperate for someone who will use the library.
But seriously, I've had quite a big part of this UDFa, yet still not stabilized, but basically to use.


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

New version.
The opening post completely changed.

Any comments are welcome.

mLipok


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

mLipok

No problem at all, I am willing to test the UDF. However, I will need a little time

to update my scripts to use this UDF. I think this one has more features than

the UDF I am currently using.

Share this post


Link to post
Share on other sites

Great.

As you have any questions or suggestions, write in this thread.

mLipok


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

#10 ·  Posted

updated

"Requirements" and "UDF HowTo/Example" in first post


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

Changed opening post.

 

2014-05-14 NEW VERSION:

2014/05/14
v0.3
*  removed examples from QuickPDF.au3
*  added separate file with examples QuickPDF_Examples.au3
* added _QPDF_StartUp()
* added _QPDF_NewLibraryPath_Commercial()
* added _QPDF_NewLibraryPath_Lite()
*   __AddLeadingZeros changedt to __QPDF_AddLeadingZeros
* CleanUp
*   _QPdf_ changed to _QPDF_
* Function Header - significantly supplemented
* additional comments
* new set of enum constants

!!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
*   Lite Function renaming
to change your script you can use:
ClipPut(StringRegExpReplace(ClipGet(),'(?i)(_QPDF)(_Lite)(_.*?)(\(|\R)','$1$3$2$4'))
*   all functions which starts with "_QPDF__" now starts with "_QPDF_"  it means one less "_"
*   _QPDF_FileSplitEachPage added new Parameters $sPDF_Password (as a second not third so $sDestinationDir is moved to third position
*   __QPDF_CreateObjectAndUnlock($oQP) change to _QPDF_CreateObjectAndUnlock($oQP) its mean is not internal any more
===================================================

Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

#12 ·  Posted (edited)

A lot better, but the Switch in _QPDF_LastErrorCode() is still wrong. I think you mean Switch $iError, as $iResultError is always 1, so checking against 101, 102...is pointless.

Ah, and the if...else (which are blank) are kind of overkill.

Edited by guinness

_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

#13 ·  Posted (edited)

A lot better, but the Switch in _QPDF_LastErrorCode() is still wrong. I think you mean Switch $iError, as $iResultError is always 1, so checking against 101, 102...is pointless.

:oops:

Fixed.

 

Ah, and the if...else (which are blank) are kind of overkill.

Because these functions are partly still during of construction.

Not quite I have an idea for their use (I mean blank "else").

But I have a habit of always better to leave yourself at the beginning of wicket, than then build from scratch the door ;)

(I hope that the translation is fairly good)

Thanks for your feedback.

 

ps.

QuickPDF.au3 - fixed and updated.

Edited by mLipok

Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

I added the QuickPDF.au3 to the include directory and i ran the QuickPDF_Examples.au3.

At that moment i get a lot of errors of missing several .au3 files.

i run

SciTE
Version 3.3.0
Mar 30 2013 17:50:01

Below the error log

>"I:\Data\Autoit\SciTe\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "I:\Data\Autoit private\zz_projects\QuickPDF_Examples.au3" /UserParams    
+>18:53:45 Starting AutoIt3Wrapper v.2.1.2.9    Environment(Language:0409  Keyboard:00020409  OS:WIN_7/Service Pack 1  CPU:X64 OS:X64)
>Running AU3Check (1.54.22.0)  from:I:\Data\Autoit
I:\Data\Autoit private\1_include\QuickPDF.au3(7,10) : ERROR: can't open include file <MsgBoxConstants.au3>.
#include <MsgBoxConstants.au3>
~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(10,10) : ERROR: can't open include file <WinAPIFiles.au3>.
#include <WinAPIFiles.au3>
~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(350,26) : WARNING: $MB_SYSTEMMODAL: possibly used before declaration.
            MsgBox($MB_SYSTEMMODAL,
            ~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(607,101) : ERROR: syntax error
Func _QPDF_FileSplitEachPage($sPDF_FileFullPath, $sPDF_Password = '', $sDestinationDir = @ScriptDir &
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(607,138) : ERROR: _QPDF_FileSplitEachPage() called by a previous line with 3 arg(s). Max = 0. First previous line calling this Func is 426.
Func _QPDF_FileSplitEachPage($sPDF_FileFullPath, $sPDF_Password = '', $sDestinationDir = @ScriptDir & '\Extracted', $iNumberOfDigits = 3)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(619,106) : ERROR: syntax error
            $sPDF_Destination = $sDestinationDir & '\' & StringRegExp($sPDF_FileFullPath, '(?i).*\\(.*?)\.pdf', 3)[
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(619,170) : WARNING: $iNumberOfDigits: possibly used before declaration.
            $sPDF_Destination = $sDestinationDir & '\' & StringRegExp($sPDF_FileFullPath, '(?i).*\\(.*?)\.pdf', 3)[0] & '_p' & __QPDF_AddLeadingZeros(String($n), $iNumberOfDigits)
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(774,36) : WARNING: $MB_OK: possibly used before declaration.
                MsgBox($MB_SYSTEMMODAL + $MB_OK,
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(350,26) : ERROR: $MB_SYSTEMMODAL: undeclared global variable.
            MsgBox($MB_SYSTEMMODAL,
            ~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(619,170) : ERROR: $iNumberOfDigits: undeclared global variable.
            $sPDF_Destination = $sDestinationDir & '\' & StringRegExp($sPDF_FileFullPath, '(?i).*\\(.*?)\.pdf', 3)[0] & '_p' & __QPDF_AddLeadingZeros(String($n), $iNumberOfDigits)
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(774,36) : ERROR: $MB_OK: undeclared global variable.
                MsgBox($MB_SYSTEMMODAL + $MB_OK,
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\1_include\QuickPDF.au3(423,46) : ERROR: _WinAPI_FileInUse(): undefined function.
        While _WinAPI_FileInUse($sA5_UpperAndBottom)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
I:\Data\Autoit private\zz_projects\QuickPDF_Examples.au3 - 9 error(s), 3 warning(s)
!>18:53:45 AU3Check ended. Press F4 to jump to next error.rc:2
>Exit code: 2    Time: 0.354

Share this post


Link to post
Share on other sites

@Jos

i run indeed an older version of AutoIt3, version 3.3.0.

I wil upgrade to the latest version, and see if this helps.

Share this post


Link to post
Share on other sites

Jos is right.

You did not read the header in my UDF.

; #INDEX# =======================================================================================================================
; Title .........: UDF for "Debenu Quick PDF Library"
; AutoIt Version : 3.3.10.2++
; Language ......: English
; Description ...: A collection of functions for Debenu Quick PDF Library
; Author(s) .....: mLipok
; Modified ......:
; ===============================================================================================================================

Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

#18 ·  Posted (edited)

 

Jos is right.

You did not read the header in my UDF.

; #INDEX# =======================================================================================================================
; Title .........: UDF for "Debenu Quick PDF Library"
; AutoIt Version : 3.3.10.2++
; Language ......: English
; Description ...: A collection of functions for Debenu Quick PDF Library
; Author(s) .....: mLipok
; Modified ......:
; ===============================================================================================================================

Indeed i did not read the header.: 

The errors are gone now, but now i seems to miss the pdf examples?

Edited by drbyte

Share this post


Link to post
Share on other sites

Did you look in 

QuickPDF.au3

or in

QuickPDF_Examples.au3


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

I took a quick look, but at this moment i can't spend much time on it.

(deadline on some other projects....)

I will change the QuickPDF_Examples.au3 to open other pdf file's.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Similar Content

    • Iznogoud
      By Iznogoud
      Hi,
      I am trying to find more information on generating PDF files from AutoIT and found the UDF topic 
      Also found some info on creating .FDF file and use PDFTK for merging, but i can't find info about a custom based layout.
      What i trying to find out is, if it is possible to generate a variable layout. For an example i created a script which is based out 20 fields and every field can contain information. If one of those fields are not filled, it shouldn't be printed on the PDF either.
      To make it more difficult, the PDF should contain a heading, the first 10 fields and then a horizontal line across the PDF and then a new heading and then show the last 10 fields.
      But only the fields which are filled.
      Is this possible?
    • Gowrisankar
      By Gowrisankar
      Hello everyone,
      I'm working on a task where, a PDF file is opened (in IE browser) when I click a link in a website.
      I have to read the first page of the PDF to find particular strings. Can you please share some ideas?
    • mLipok
      By mLipok
      Here:
      https://github.com/nachbar/TRichViewToPdfUsingDebenu/blob/master/Unit1.cpp
      I found a code in C++ for file format conversion from RTF to PDF with using Debenu QuickPDF.
      I know how to use Debenu QuickPDF in AutoIt .
      My question is about RTF part of this code:
       
      HDC hdcNew = debenu->GetCanvasDC( RTFPRINTINGDOTSPERINCH * RTFPAGEWIDTHININCHES, RTFPRINTINGDOTSPERINCH * RTFPAGEHEIGHTININCHES); canvas = new TCanvas; canvas->Handle = hdcNew; RVReportHelper1->DrawPage( PageCounter, canvas, true, RTFPRINTINGDOTSPERINCH * RTFPAGEHEIGHTININCHES); // LastPageHeight);  
      First there is hdcNew declaration , and this is not the problem.
      My problem is in converting the following code snippet, to AutoIt
      canvas = new TCanvas; canvas->Handle = hdcNew; RVReportHelper1->DrawPage( PageCounter, canvas, true, RTFPRINTINGDOTSPERINCH * RTFPAGEHEIGHTININCHES); // LastPageHeight);
      If you remember, I created RTFPrinter sometime ago. But it was some time ago , and created by trial and error, rather than in-depth analysis.
      Also, it was just a modification of another script, not my own work from scratch.
      So now I'm looking for help how to adapt this code snippet to AutoIt.
      Any tips ?
       
      Regards,
      mLIpok
       
    • Kiran_L
      By Kiran_L
      Hi guys,
       
      I am trying to read a pdf file with unstructured data. I dontot know how to handle pdf activities in AutoIt,
      Can you help me with any UDF to open the PDF and read the doc.
       
      Thanks for your time.