Ann: WPViewPDF V3.11 - ActiveX, .NET, VCL, 32 + 64bit

    • Offizieller Beitrag

    WPViewPDF is a component that allows you to load one or multiple PDF files and to display or print it/them as one.

    It is possible to export pages as bitmaps (PNG, JPEG) or as text. It is possible to add drawings which will be displayed and printed on top of the original data. The drawing objects can be moved and sized by the programmer in code or by the user in the end product.

    With WPViewPDF PLUS you can also add graphics and images to the PDF data (stamp PDF). It is possible to combine several PDF files into one new file (merge PDF). It is also possible to save selected pages (extract pages) or delete certain pages. It is possible to change field data, for example to merge data to fill out forms.

    Version 3 is the result of extensive work. The logic required to load, render and manipulate PDF data was completely reinvented to create this new version. It makes use of clever and effective caching for quick response times. It also makes use of multithreading for better user interaction.

    The PrintHDC method was revised and, as a result, printing to any Windows device is now much easier and produces a higher quality printout.

    The multithreaded scrolling viewer can quickly change between zoom states and various layout modes, including multi-column display and side-by-side page layout. It can also display a _separate thumbnail view_ to the PDF.

    Version 3 PLUS introduces a new stamping method which allows it to place objects or highlighting rectangles on the page. This objects can be moved and sized by the user. The scripted stamping was also implemented because it facilitates the addition of titles or page numbers to a range of pages.

    Pages can be selected and dragged to a new location.

    Text extraction can now also create text in rich text format (RTF) - here the logic makes use of PDF tags to keep text together which belongs together.

    PDF features supported:
    - support for embedded Type3 fonts
    - separation color space (Type 0, 2 and 4)
    - LAB color space
    - DeviceN color space
    - encrypted PDFs
    - PDFs with compressed XREF tables
    - better support for JPEG format (YAAC)
    - better annotation support
    - new: includes 64 bit engine

    With WPViewPDF you get a VCL, an ActiveX and a .NET component in one reasonably priced package. It is updated regularly and, since it is based on a DLL, updating works effectively and a new build of your application is not necessary.

    The Demo Setup can be downloaded here:
    https://www.wpcubed.com/pdf/download/w…demo-component/
    This setup contains the DLL and the VCL for Delphi and sample projects.

    Regards,
    Julian Ziersch
    WPCubed GmbH
    https://www.wpcubed.com


    • Offizieller Beitrag

    V3.09.4 is online now.

    WPViewPDF now supports a single page mode: only one page is displayed. The thumbnail view can be used to navigate.

    It also includes several improvements to PDF rendering and PDF reading. The page selection in thumbnail view has been improved. When pages are rotatet, the current page stays focussed.

    The API has been enhanced to get the screen position which corresponds to a certain PDF position. This makes it possible to show a popup menu at a certain position.

    • Offizieller Beitrag

    V3.09.6 is online now.

    The C# wrapper now supports "AnyCPU" - 32 bit and 64 bit is now possible also in .NET applications.

    It is now possible to read the bookmarks using the command COMPDF_GetBookmarkXML.

    COMPDF_SetBookmarkXML can be used to to modify the bookmarks to be displayed in the bookmark treeview and also to be to written to a new file using WPViewPDF PLUS.

    Example for XML structure:

    • Offizieller Beitrag

    V3.11.0 is online now.

    23.8.2013: V3.11.0
    - pdfMerge can now also apply a stamp script, i.e. to print page numbers
    - Destinations can now also use floating point zoomvalues /XYZ which are internally multiplied with 100
    - improved threading and stability. Tested with below average computer and windows XP.
    - nested clipping was not always supported
    - updates scrollbar logic for single page mode

    28.7.2013: V3.10.2'''
    - PDF merge handles embedded objects more effectively
    - transparent objects were rendered opaque
    - objects were not painted correctly on empty pages

    22.7.2013: V3.10.2''
    - Fixed: AppendPage caused added draw objects to disappear
    - Fixed: AppendPage caused rendered draw objects to disappear
    - Fixed: Deleted Pages reappear after AppendPage


    18.7.2013: V3.10.2'
    - fix problem with embedded fonts where the names were indirectly specified
    - fix problem with object selection. Now done in reverse order

    16.7.2013: V3.10.2
    - Fix the problem that AddImage did not work on a PDF file which was saved before with added images

    7.7.2013: V3.10.1
    + pdfMerge now understands the PAGELIST option to only save part of the loaded PDF files
    * The AppendPage command produced duplicates on subsequent calls. This problem has been fixed.
    * update to CCITT decoding
    * update to reader for in PS embedded images

    12.6.2013: V3.10.0
    + COMPDF_CopyToClibrd can now copy only the text inside the drawn rectangle when called from OnSelRect event, (see Change the way the mouse works)
    + COMPDF_StampText is now able to draw lines and rectangles. It was also enhanced to easily append lines of text. It is now possible to use relative coordinates to make it easy to pre-create a stamp.
    - fix problem with COMPDF_SetSecurityOwner
    + added event OnSelRect to .NET assembly

    • Offizieller Beitrag

    12.9.2013: V3.11.2'
    - fix a problem in page caching - to much memory was allcoated.
    - fix problem in FindText function
    - HighlightText now can also work case sensitively
    + COMPDF_SetPageNumberStringViewer
    + COMPDF_SetPageNumberStringThumbs
    - solves problem with links which point to a page with \nul coordinate values
    - fixes a floatingpoint error

    • Offizieller Beitrag

    20.9.2013: V3.11.3
    + when the user browses the document using links or bookmarks, the position is logged.
    After the backspace key was pressed or Command(COMPDF_GotoPrev, 2) the last position is located.
    - fixed problem with text in few PDF
    - fix ListOutOfBounds exception on rare PDFs
    - when doing fast scrolling (thumbtrack) the memory consumption went high
    - fix problem when clipping was used inside of Type3 definition
    * faster repaint after page rotation

    • Offizieller Beitrag

    6.10.2013: V3.11.4
    - fixed possible problem when Application.Terminate was used.
    + added support for images, text and vectors using CalRGB colorspace
    * added workaround for indexed images where index uses same value for all items
    + added command COMPDF_STOP which stops the rendering thread
    + use command COMPDF_GetModified to read modified state for PDF, it is now set by page move, deletion and rotation commands
    and cleared internally when the viewer was cleared.
    * added compiler switch for Delphi XE5
    Note: MadExcept fixed problem with exception at 0x000014 at startup. You need to get latest version of MadExcept.

    • Offizieller Beitrag

    12.11.2013: V3.11.6 - WPViewPDF PLUS:
    NEW AND UPDATED FUNCTIONS TO FILL FORMS INTERACTIVELY!
    + command: COMPDF_ACRO_MAKEDRAWOBJ - converts fields in a PDF into
    DrawObjects. This makes it possible to fill a form interactively.
    Example: WPViewPDF1.CommandStrEx(COMPDF_ACRO_MAKEDRAWOBJ,'',2+8+16);
    + Command: COMPDF_DrawObjectSelect Select an object with a certain ID
    + Command: COMPDF_DrawObjectDeSelectAll Deselect all objects
    The ID is provided by WPViewPDF1.CommandEx(COMPDF_ACRO_GET, Cardinal(-3))
    after a call to COMPDF_ACRO_GET, index to get the name
    + command COMPDF_DONTSETDEVMODE allows this values:
    0 - default behaviour
    1 - do not change printer parameter before printing
    3 - do not set any print parameter except for page orientation
    * save NeedAppearances true if fields were changed.
    + command COMPDF_SelectPaperOrientation to select the printer paper orientation.
    + command COMPDF_DrawObjectGetSelected can be used to read the draw objects which are currently selectd.

    • Offizieller Beitrag

    3.12.2013: V3.11.7
    + COMPDF_GetPageNumbersInView = 223; Gets a string with all the numbers of the pages which are currently displayed (at least partly). First Page is "1"
    - avoid draw problems with image drawobjects with w or h <0
    - modified detection for fonts which use a unicode charmap also works if charcount<255

    21.11.2013: V3.11.6''
    - handle faulty annotation streams
    - solves problem when there is a PDF % comment before PDF "trailer" object
    * updated code to render stamps. They were sometimes not positioned correctly

    • Offizieller Beitrag

    3.12.2013: V3.11.8
    + added function pointer to wpview_pdfMakeImage and wpview_pdfMakeImageW to VCL
    * updated Delphi "DirectDLL" demo
    + pdfGetInfoW can now also be used to read the page count and page sizes used in PDF document
    - pdfMerge created incorrect error codes
    - pdfPrint now creates a debug message if a file was not found (error in filename)

    • Offizieller Beitrag

    29.12.2013: V3.11.9
    * updated support for images with transparency masks (important for certain scanned PDFs)
    + message MSGPDF_SCROLLHORIZONTALLY is sent for horizontal scrolling
    + command COMPDF_GetGetHScrollSize read width and height of horizontal scroll panel
    + command COMPDF_GetGetVScrollSize read width and height of vertical scroll panel

    • Offizieller Beitrag

    11.1.2014: V3.11.9''
    * support for transparency for text paths
    * support for transparency in annotation appearances (CA property)
    * support for negative page rotation
    + pdfPrint now understands the option ADDPRINTER. The mentioned printer will be added to the list of printers and then selected.
    + new ViewOption wpNoHyperlinkCursor to disable switching the mouse cursor over links. (note: wpDontUseHyperlinks can be used to disable the internal handling of links, the event can still be used to jump to destinations)

    • Offizieller Beitrag

    17.1.2014: V3.12.0'
    + VCL only: If the compiler symbol ENABLE_WNDRECREATE is active (=default in WPViewPDF3.PAS) the internal data is buffered before a window handle is destroyed until the object has been freed. This makes it possible to change the parent of a VCL control which implicitly destroys and recreates window handles.
    * in case the AcroForm object of a PDF file specifies NeedAppearances=true, all text annotations will be rendered using the provided field data and not the appearance stream. This improves compatibility with products creating incorrect appearance streams. This mode can be disabled using command COMPDF_SetPaintMode, bit 4 (value 8)
    * round up the value of width and height of image rect when images are painted to fix many white space errors caused by GDI+ rounding
    - Mask parameter for images handled better

    • Offizieller Beitrag

    3.2.2014: V3.12.1''
    - after rotating the first page in thumbnail view the large view was not always updated
    * pdfGetInfoW will now encode CRNL inside info strings encode as "<br>". Optionally
    the Option 1024 can be used. In this case it will create a comma separated list for the values.

    30.1.2014: V3.12.1'
    - a certain type of cmap caused an endless loop