Jump to content

Search the Community

Showing results for tags 'pdf'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • General
    • Announcements and Site News
    • Administration
  • AutoIt v3
    • AutoIt Help and Support
    • AutoIt Technical Discussion
    • AutoIt Example Scripts
  • Scripting and Development
    • Developer General Discussion
    • Language Specific Discussion
  • IT Administration
    • Operating System Deployment
    • Windows Client
    • Windows Server
    • Office


  • AutoIt Team
    • Beta
    • MVP
  • AutoIt
    • Automation
    • Databases and web connections
    • Data compression
    • Encryption and hash
    • Games
    • GUI Additions
    • Hardware
    • Information gathering
    • Internet protocol suite
    • Maths
    • Media
    • PDF
    • Security
    • Social Media and other Website API
    • Windows
  • Scripting and Development
  • IT Administration
    • Operating System Deployment
    • Windows Client
    • Windows Server
    • Office

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start






Found 37 results

  1. A long time I was using "PDFCreator - Print2PDF" made by @ptrex Thanks to @ptrex for this UDF: which was for me an inspiration, not only for PDFCreator, but to learn ActiveX controls. I many times modified @ptrex UDF, but recently more and more felt the need to write it almost from scratch. Here it is: How to use it ? There is a region "Example Init" so you need just to run this UDF. #Region PDFCreator.au3 - Example Init If Not @Compiled And @ScriptName = 'PDFCreator.au3' Or @ScriptName = 'PDFCreator_DebugIt.au3' Then $g__oPDFCreator_ErrorHandler = ObjEvent("AutoIt.Error", "__PDFCreator_ErrFunc") #cs Not working yet _PDFCreator_ConvertDocument(@ScriptDir & '\PDFCreator.rtf',@ScriptDir & '\PDFCreator_2.pdf') ShellExecute(@ScriptDir & '\PDFCreator.rtf') ShellExecute(@ScriptDir & '\PDFCreator_2.pdf') MsgBox(0, 'END', '_PDFCreator_ConvertDocument()') #ce _PDFCreator_Example_1_RTF2PDF() MsgBox(0, 'END', '_PDFCreator_Example_1_RTF2PDF()') _PDFCreator_Example_2_COMBINEALL() MsgBox(0, 'END', '_PDFCreator_Example_2_COMBINEALL()') _PDFCreator_Example_3_COMBINEALL() MsgBox(0, 'END', '_PDFCreator_Example_3_COMBINEALL()') MsgBox(0, 'EXIT', 'Close this MsgBox to exit example script.') ;~ MsgBox(0, '$g__oPDFCreator.cWindowsVersion', $g__oPDFCreator.cWindowsVersion) Exit EndIf #EndRegion PDFCreator.au3 - Example Init REMAKRS: this UDF is for PDFCreator 1.x.x not for 2.x.x some reference and examples for PDFCreator 2.x.x Best regards, mLipok
  2. Today, in the end as well, worked out using the Acrobat Reader ActiveX COM Object "AcroPDF.PDF.1" #include-once #include <Constants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <Misc.au3> #include <MenuConstants.au3> #include <WinAPI.au3> ;~ Thanks to BrewManNH ;~ http://www.autoitscript.com/forum/topic/134878-guiregistermsg-replacement-for-guictrlsetonevent-and-guigetmsg/ ;~ Thanks to mikell ;~ http://www.autoitscript.com/forum/topic/161985-how-to-close-gui-with-guiregistermsg/ ; Install a custom error handler Global $oMyError = ObjEvent("AutoIt.Error", "_ComErrFunc") Global $__hExampleGUI Global $__idOPEN Global $_fExit Global $__hACROBAT_GUI = '' Global $__idACROBAT_GUI_CTRL_AX = '' Global $__oACROBAT_READER = '' #include <GUIConstantsEx.au3> ;~ GUIRegisterMsg($WM_ERASEBKGND, "_WM_EXTRACTOR") ;~ GUIRegisterMsg($WM_PAINT, "_WM_EXTRACTOR") ;~ GUIRegisterMsg($WM_ACTIVATE, "_WM_EXTRACTOR") ;~ GUIRegisterMsg($WM_CAPTURECHANGED, "_WM_EXTRACTOR") ;~ GUIRegisterMsg($WM_DEVICECHANGE, "_WM_EXTRACTOR") GUIRegisterMsg($WM_EXITSIZEMOVE, "_WM_EXTRACTOR") GUIRegisterMsg($WM_COMMAND, "_WM_EXTRACTOR") GUIRegisterMsg($WM_SYSCOMMAND, "_WM_EXTRACTOR") GUIRegisterMsg($WM_HSCROLL, "_WM_EXTRACTOR") _ExampleProgram_Gui() While 1 Sleep(10) If $_fExit Then _ACROBAT_GUI_DELETE() DeleteGui() Exit EndIf WEnd Func DeleteGui() GUIDelete($__hExampleGUI) EndFunc ;==>DeleteGui Func _ExampleProgram_Gui() ; Create a GUI with various controls. $__hExampleGUI = GUICreate("Example") $__idOPEN = GUICtrlCreateButton("&Open", 310, 370, 85, 25) ; Display the GUI. GUISetState(@SW_SHOW, $__hExampleGUI) EndFunc ;==>_ExampleProgram_Gui #Region ACROBAT FUNCTION Func _AcrobatInit() $__oACROBAT_READER = ObjCreate("AcroPDF.PDF.1"); Return $__oACROBAT_READER.GetVersions EndFunc ;==>_AcrobatInit Func _Acrobat_Events(ByRef $aMSG) If $aMSG[1] = $__hACROBAT_GUI Then Switch $aMSG[0] Case $GUI_EVENT_CLOSE _ACROBAT_GUI_DELETE() EndSwitch EndIf EndFunc ;==>_Acrobat_Events Func _ACROBAT_Destroy() $__oACROBAT_READER = "" ;~ MsgBox(1,'test','destroyed') EndFunc ;==>_ACROBAT_Destroy Func _AcrobatShow($sFile, $sTitle = "PDF ", $iLeft = 50, $iTop = 0, $iWidth = 1000, $iHeight = 700) If FileExists($sFile) Then _AcrobatInit() ; Set option $__oACROBAT_READER.src = $sFile $__oACROBAT_READER.SetLayoutMode(4) $__oACROBAT_READER.SetPageMode(1) $__oACROBAT_READER.SetShowToolbar(0) $__oACROBAT_READER.SetView(1) ; Create GUI $__hACROBAT_GUI = GUICreate($sTitle, $iWidth, $iHeight, $iLeft, $iTop, BitOR($GUI_SS_DEFAULT_GUI, $WS_SIZEBOX, $WS_MAXIMIZEBOX)) $__idACROBAT_GUI_CTRL_AX = GUICtrlCreateObj($__oACROBAT_READER, 5, 5, $iWidth - 20, $iHeight - 10) GUICtrlSetStyle($__idACROBAT_GUI_CTRL_AX, $WS_VISIBLE) GUISetState() EndIf EndFunc ;==>_AcrobatShow Func _ACROBAT_Refresh() If IsObj($__oACROBAT_READER) Then Local $hPreviouslyGui = GUISwitch($__hACROBAT_GUI) GUISetState(@SW_LOCK) Local $iGUI_PDFWidth = WinGetPos($__hACROBAT_GUI)[2] - 20 Local $iGUI_PDFHeight = WinGetPos($__hACROBAT_GUI)[3] - 40 Local $sFile = $__oACROBAT_READER.src ; this below line do not works with Acro Reader ; Local $iCurrentPage = $__oACROBAT_READER.GetNumber Local $iCurrentPage = 0 _ACROBAT_Destroy() GUICtrlDelete($__idACROBAT_GUI_CTRL_AX) _AcrobatInit() $__idACROBAT_GUI_CTRL_AX = GUICtrlCreateObj($__oACROBAT_READER, 5, 5, $iGUI_PDFWidth, $iGUI_PDFHeight) $__oACROBAT_READER.src = $sFile ;~ $__oACROBAT_READER.SetCurrentPage($iCurrentPage) GUISetState(@SW_UNLOCK) GUISwitch($hPreviouslyGui) EndIf EndFunc ;==>_ACROBAT_Refresh Func _ACROBAT_GUI_DELETE() _ACROBAT_Destroy() if IsHWnd($__hACROBAT_GUI) then GUIDelete($__hACROBAT_GUI) EndFunc ;==>_ACROBAT_GUI_DELETE #EndRegion ACROBAT FUNCTION #Region MSG and ERROR HANDLER Func _WM_EXTRACTOR($hWnd, $iMsg, $wParam, $lParam) ;~ ConsoleWrite('! $hWnd = ' & $hWnd & ' $iMsg = ' & $iMsg & '('&HEX($iMsg)&')'& ' $wParam = ' & $wParam & ' $lParam = ' & $lParam & @CRLF) If $hWnd = ControlGetHandle($__hACROBAT_GUI, '', $__idACROBAT_GUI_CTRL_AX) Then ConsoleWrite('! -------------- $hWnd = ' & $hWnd & ' $iMsg = ' & $iMsg & '(' & Hex($iMsg) & ')' & ' $wParam = ' & $wParam & ' $lParam = ' & $lParam & @CRLF) EndIf If $hWnd = $__hACROBAT_GUI Then Switch $iMsg Case $WM_COMMAND #cs Case $WM_ACTIVATE Local $test = BitAND($wParam, 0x00000004) if $test <> 0 then MsgBox(1,'$WM_ACTIVATE','test') _ACROBAT_Refresh() EndIf Case $WM_ERASEBKGND WinGetHandle("[ACTIVE]") if $__hACROBAT_GUI <> _WinAPI_GetWindow ( $__hACROBAT_GUI, $GW_HWNDPREV ) then ConsoleWrite('! Case $WM_ERASEBKGND' & @CRLF) _ACROBAT_Refresh() _WinAPI_RedrawWindow($__hACROBAT_GUI,0,0,$RDW_NOERASE) EndIf Case $WM_PAINT _WinAPI_RedrawWindow($__hACROBAT_GUI,0,0,$RDW_NOERASE) Case $WM_CAPTURECHANGED _ACROBAT_Refresh() Case $WM_DEVICECHANGE _ACROBAT_Refresh() #ce Case $WM_EXITSIZEMOVE _ACROBAT_Refresh() Case $WM_SYSCOMMAND ;~ Local $test = BitAND($wParam, 0xFFF0) Local $test = BitAND($wParam, 0x0000FFFF) Switch $test Case $SC_CLOSE _ACROBAT_GUI_DELETE() Case $SC_CONTEXTHELP Case $SC_DEFAULT Case $SC_HOTKEY Case $SC_HSCROLL Case $SC_KEYMENU Case $SC_MAXIMIZE _ACROBAT_Refresh() Case $SC_MINIMIZE Case $SC_MONITORPOWER Case $SC_MOUSEMENU Case $SC_MOVE ;~ _ACROBAT_Refresh() Case $SC_NEXTWINDOW ;~ _ACROBAT_Refresh() Case $SC_PREVWINDOW ;~ _ACROBAT_Refresh() Case $SC_RESTORE _ACROBAT_Refresh() Case $SC_SCREENSAVE Case $SC_SIZE Case $SC_TASKLIST Case $SC_VSCROLL EndSwitch EndSwitch EndIf If $hWnd = $__hExampleGUI Then Switch $iMsg Case $WM_COMMAND Local $nID = BitAND($wParam, 0x0000FFFF) Local $hCtrl = $lParam Switch $nID Case $__idOPEN if not IsObj($__oACROBAT_READER) then _AcrobatShow(FileOpenDialog("Choose PDF", "C:\Temp", "PDF Files(*.pdf)", 3)) ; put your own start folder here) EndIf EndSwitch Case $WM_SYSCOMMAND Local $test = BitAND($wParam, 0xFFF0) Switch $test Case $SC_CLOSE $_fExit = True Case $SC_CONTEXTHELP Case $SC_DEFAULT Case $SC_HOTKEY Case $SC_HSCROLL Case $SC_KEYMENU Case $SC_MAXIMIZE Case $SC_MINIMIZE Case $SC_MONITORPOWER Case $SC_MOUSEMENU Case $SC_MOVE Case $SC_NEXTWINDOW Case $SC_PREVWINDOW Case $SC_RESTORE Case $SC_SCREENSAVE Case $SC_SIZE Case $SC_TASKLIST Case $SC_VSCROLL EndSwitch EndSwitch EndIf Return $GUI_RUNDEFMSG EndFunc ;==>_WM_EXTRACTOR Func _ComErrFunc() Local $HexNumber = Hex($oMyError.number, 8) MsgBox(0, "AutoItCOM Test", _ "We intercepted a COM Error !" & @CRLF & @CRLF & _ "err.description is: " & @TAB & $oMyError.description & @CRLF & _ "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _ "err.number is: " & @TAB & $HexNumber & @CRLF & _ "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _ "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _ "err.source is: " & @TAB & $oMyError.source & @CRLF & _ "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _ "err.helpcontext is: " & @TAB & $oMyError.helpcontext _ ) SetError(1) EndFunc ;==>_ComErrFunc #EndRegion MSG and ERROR HANDLER Any comments are welcome. Cheers mLipok
  3. I was allways wondering How to get reference to AcrobatReader object and after all to the PDF file embeded in IE. Today I was here: http://www.vitoplantamura.com/index.aspx?page=axvncviewer there is such a interesting html: When I analyze this then I start to wonder about this line: EDIT: above fraction was only an introduction, describing where it came my question. And now then the question arise : How I can use document.all to get the refrence to specified AxObject in this Case I mean to AcrobatReader opened in IE ? EDIT: of course I mean a case when I have opened document in IE.
  4. 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: 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 to use the commercial version you need to use the _QPdf_SetLicenseKey()AutoIt UDF and examples download, and the current version information please go to download section: The following information are outdated 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
  5. 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?
  6. Hello, still learning and trying to understand AutoIT but having problem in filling my PDF file. So my code looks like similar to this: Global $1 = "text text 44444444" Global $2 = "texting2 texting2" Global $3 = "newtext3 next3" ShellExecute ("C:\Users\XXX\Desktop\myPDF.pdf") WinWaitActive("MyPDF.pdf - Adobe Acrobat Reader DC") Send ("{TAB}") ClipPut($1) Send ("^v") Send ("{TAB 3}") ClipPut($2) Send("^v") Send ("{TAB}") ClipPut($3) Send("^v") So its fill my PDF form, the first field looks good, the code add the text text 4444, then second should be $2 with texting2 texting2 but for some reason the code uses for second and third field after TAB only variable $3. So, I receive in $2 and $3 for some reason same newtext3 next3 in both, why its skipping the variable $2? Maybe there also much better solution for instant text? Because Send writes with delay by letters which I don't like. Thanks!
  7. Hello! i wrote this function as alternative to using the Com Object or Commandline version of this project, discussed also earlyer on this forum. Project site - http://ebstudio.info/home/xdoc2txt.html Advantage of this implementation is that you do not need to register Com dll, using regsvr32. But you still need the project Dll (xd2txlib.dll). Enjoy! ; #FUNCTION# ==================================================================================================================== ; Name ..........: _ExtractText ; Description ...: Extracts text from advanced documment formats (Doc, Docx, ODT, XLS, ...) ; Syntax ........: _ExtractText($sFilename[, $bProperties = False[, $hDll = 0]]) ; Parameters ....: $sFilename - a string value. ; $bProperties - [optional] a boolean value. Default is False. If True, documment properties will be returned instead of the text. ; $hDll - [optional] a handle value. Default is 0. Optional handle to previously opened xd2txlib.dll. By default the xd2txlib.dll (Expected in @scriptdir) will be opened and closed during the function call. ; Return value .: String, containing the text or documment properties or empty string and Error as follows: ;1 - The file does not exists. ;2 - Error during opening xd2txlib.dll. ;3 - No text returned. ; Author ........: Fenzik ; Modified ......: ; Remarks .......: Project site - http://ebstudio.info/home/xdoc2txt.html ; Related .......: ; Link ..........: ; Example .......: No ; =============================================================================================================================== Func _ExtractText($sFilename, $bProperties = False, $hDll = 0) If Not FileExists($sFilename) Then Return SetError(1, "", "") Local $bLoaded = False If $hDll = 0 Then $hDll = DllOpen(@scriptdir&"\xd2txlib.dll") If $hDll = -1 Then Return SetError(2, "", "") $bLoaded = True Endif $aResult = DllCall($hDll, "int:cdecl", "ExtractText", "WSTR", $sFilename, "BOOL", $bProperties, "WSTR*", "") If $aResult[0] = 0 Then Return SetError(3, "", "") If $bLoaded = True Then DllClose($hDll) Return $aResult[3] EndFunc xd2txlib-example.zip
  8. Hello Experts, I have Zero experience with Autoit + Adobe Acrobat, and I really in need to get this working as PoC. I am trying to automate some manual actions below are the steps I would like to do. INPUT to script : 1. PDF file to open 2. String that I would like to add as \\Server\Directory name Steps : 1. Open the file in Adobe Acrobat Pro 2. Browse to View > Tools > Send For Review > Open (see image 1) 3. On the launched tool bar click on "Send for Shared Connecting" (see image 2) 4. Next select option "Automatically Collect comments on my..." in dropdown and click 'Next' (see image 3) 5. Select radiobutton "Network folder" and paste the input "\\Server\Directory" in text field and click 'Next' (see image 4) Experts, I would really appreciate a quick script which I can run and get rolling. Please note, I would not likwe to rely on MouseClick and/or cordinates match approach. PLEASE SUPPORT!!!! Makz ********************************************************************************************************** Image 1 Image 2 Image 3 Image 4
  9. Hi guys! A pretty simple UDF to convert HTML to PDF using wkHTMLtoPDF. It uses the C API of the tool (DLL), so no external process, no ActiveX or COM sh*t. See the example, and the documentation of wkHTMLtoPDF. Cheers https://github.com/matwachich/wkhtmltopdf-au3
  10. Hi every one . I want to read a pdf file and write into a excel using autoit , so how can i do this with out using third party server please tell me . Thank you..
  11. 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.
  12. Version 0.10


    ; #INDEX# ======================================================================================================================= ; Title .........: UDF for "Debenu Quick PDF Library" ; AutoIt Version : ; Language ......: English ; Description ...: A collection of functions for Debenu Quick PDF Library ; Author(s) .....: mLipok ; Modified ......: ; =============================================================================================================================== Release note: Erratum v0.7: Forum link:
  13. Hello I am trying to get chrome to save it's current webpage to a pdf using autoit. I wold like to save the file into a folder on the desktop called "ChromeFiles" . However when I use the send command chrome only occasionally responds. Thank you Simon
  14. First of all IDK if it's OK to post this topic here and if not I'm asking to move it to the right place. Anyway I ask for help in the PDF UDF main thread but nobody has answer me yet and I really need help on this. See the problem started when I upgraded Autoit to its new version you can see the thread in the following link
  15. 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?
  16. 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
  17. Hi Guys, I've been reading this post ... When I came accross the examples, non of them had what I was looking for. I basically want to "snapshot" my GUI's multiple tabs and send them into the pdf. A little nudge from you guys would be great. Im really stuck with this one, therefore I have no code. Lets discuss or point me in a right direction... thanks alot
  18. Hey Everybody, as you know im on a very low autoit-level. My question is: How can i read all PDFs from a Folder wich is open and copy them to a Folder on a Desktop. The Folder wich contains the PDFs is variable Z:\Projektls\"*"*"*EVERYTIME ANOTHER ENDING"*"*"*"*" There can be 1 PDF or even 15 PDFs. i tried it with _FileListToArray and _FileCopy but i Need some help to understand this language THANKS!
  19. Hey Community, cause im too new in the Auto it world i will try it with the your help. hopefully. I woud like to know how i can handle my Problem. ---- I have a Excel Data with 362 random numbers. For Example: 1166642335374 1172899897343 ..... this numbers are a part of the filepath ...example D:\Projekte\1166_64233_5374 as u can see its the first number of the Excel data. After the first 4 numbers it shoud make a "_" than another 5 "_" This is my first question. How can i handle this to make it Shell execute. -------- Second question: If i am in the path. For Example: D:\Projekte\1166_64233_5374 the code shoud search for specific PDF Files. They are named like: 0050569E364B1ED79B900F73E62660EC.pdf the first 15 letters are always the same 0050569E364B1ED when he found this data he has to copy it on a Folder on the Desktop. (There can also be 2 or 3 pdfs in one Folder with this letters) ---- Please give me some help :-)
  20. Good morning guys I'd like to know if there is a way to convert a PDF in CSV or, eventually, in TXT, in order to read from it, like a database... I have a PDF and I think ( I dind't search a lot on the forum ) with AutoIt, but I'd like work with Excel styles... Does anyone know a good program which convert PDF to CSV? PS: the PDF file is 5 MB, and it contains 439 pages... Thanks everyone for the help
  21. Good morning I was looking around the forum if there were some customizable solutions about creating a PDF from "0" to something like a report... What I'd like to do is something with a header ( 2 logos and a title ), with a table which contains data read from a file At the moment, I was working with HTML, since I know it and it's very simple to do a table with some data inside... But know, I'm a bit stuck about the exporting the HTML page to PDF... And, here too, if someone knows how to do it, please, I'm here listening Thanks guys
  22. I would like to present, the UDF for Debenu PDF Viewer SDK You can also find more info here: Debenu Quick PDF UDF In order to download the current version of the UDF, vist download section.
  23. Version v0.3


    This is a UDF for use Debenu PDF Viewer SDK - ActiveX component. You can read more about this ActiveX component here: http://www.debenu.com/products/development/debenu-pdf-viewer-sdk/ v 0.2 2015/05/18 v0.3
  24. Hi guys Looking to automate...I have PDF files...Need to convert them all to 2 pages each but more specifically, retain only the first and last. Searched a lot and hitting the wall....Any ideas? Just directions would do... Not sure how to "print to file" and I believe |ShellExecuteWait($sFilePath, " /h /p", "", "print", @SW_HIDE)| doesn't give options of what pages...
  25. ; #FUNCTION# ==================================================================================================================== ; Name ..........: _html2pdf ; Description ...: Convert HTML file to PDF file with htm2pdf.exe by Synopse ; Syntax ........: _html2pdf($sHTML_FileFullPath[, $sPDF_FileFullPath = Default[, $bDeleteHTML = False]]) ; Parameters ....: $sHTML_FileFullPath - a string value. HTML file full path. ; $sPDF_FileFullPath - [optional] a string value. Default value is Default -> $sHTML_FileFullPath & '.pdf' ; $bDeleteHTML - [optional] a boolean value. Default is False. ; Return values .: $sPDF_FileFullPath or set @error to 1 ; Author ........: mLipok ; Modified ......: ; Remarks .......: ; Related .......: ; Link ..........: http://blog.synopse.info/post/2010/07/14/htm2pdf-free-tool ; Example .......: No ; =============================================================================================================================== Func _html2pdf($sHTML_FileFullPath, $sPDF_FileFullPath = Default, $bDeleteHTML = False) If $sPDF_FileFullPath = Default Then $sPDF_FileFullPath = $sHTML_FileFullPath & '.pdf' Local $sINI_FileFullPath = @ScriptDir & '\htm2pdf.ini' IniWrite($sINI_FileFullPath, 'Settings', 'HTML', $sHTML_FileFullPath) IniWrite($sINI_FileFullPath, 'Settings', 'PDF', $sPDF_FileFullPath) IniWrite($sINI_FileFullPath, 'Settings', 'OpenAfterSave', '0') IniWrite($sINI_FileFullPath, 'Settings', 'ScaleToFit', '1') IniWrite($sINI_FileFullPath, 'Settings', 'Orientation', 0) IniWrite($sINI_FileFullPath, 'Settings', 'PaperSize', 0) IniWrite($sINI_FileFullPath, 'Margins', 'Left', 2) IniWrite($sINI_FileFullPath, 'Margins', 'Top', 1) IniWrite($sINI_FileFullPath, 'Margins', 'Right', 1) IniWrite($sINI_FileFullPath, 'Margins', 'Bottom', 1) ShellExecuteWait(@ScriptDir & '\htm2pdf.exe', '/silent', @ScriptDir) If Not FileExists($sPDF_FileFullPath) Then Return SetError(1, 0, '') Else If $bDeleteHTML Then FileDelete($sHTML_FileFullPath) Return $sPDF_FileFullPath EndIf EndFunc ;==>_html2pdf http://blog.synopse.info/post/2010/07/14/htm2pdf-free-tool#main http://blog.synopse.info/post/2010/07/14/htm2pdf-free-tool http://synopse.info/forum/viewtopic.php?pid=187 http://synopse.info/files/pdf/htm2pdf.zip mLipok
  • Create New...