You are viewing limited content. For full access, please sign in.

Question

Question

Marks/Annotations that cannot be removed on export from Weblink

asked on June 21, 2018 Show version history

I have a customer who has expressed concerns with implementing stamping of drawings to prevent copies of these drawings obtained from WebLink being used for permitting.  So far, I haven't found any documentation regarding this matter.  They are currently on Weblink version 8.2.2

 

Users have the ability to change export settings to not allow for annotations to be exported on the document.  Is there a way to 'hide' this option or not allow users to alter it?  Hiding My Weblink isn't a viable option as they need it to alter columns, etc.

 

We looked at using watermarks but there were 2 problems with this:

1.  We only want the mark on the first page over the approval area (cannot restrict to first page only)

2.  The approval area in the drawing varies.  It is cumbersome and in some cases impossible to maneuver the watermark to cover the approval area only

 

Is there another viable option to mark these drawings without it being able to be removed?

0 0

Replies

replied on June 21, 2018 Show version history

Interesting. This seems like it could present a serious challenge for some people.

Just to make sure it wasn't a permission thing, I set a test account to have read-only access in the repository (search, print, and export feature rights with Browse, Read, and See Annotations).

Testing revealed that the account could indeed export documents without annotations, but the behavior is the same in the desktop client so it is not WebLink specific.

Seems like maybe there needs to be a permission that can prevent this just like users need permission to be able to see through redactions.

One possible solution would be to export the page image with the annotations thereby flattening them, then replace the page image with your flattened image; this could be automated through workflow in several different ways.

0 0
replied on June 26, 2018

Have you considered using redactions?  They lack the visual flexibility of stamps, but you can put them where you want and they are part of the Laserfiche security regime so their application is enforced by the software (subject to user rights).

0 0
replied on June 27, 2018

I am the person facing this dilemma.  The placement of the stamp varies from drawing to drawing so "flatting" the page with the stamp would have to be done manually.  We have over 700 drawings that need to have the stamp added.

The fact that anyone using WebLink can remove a stamp and print copies of a document renders stamps like "Confidential" and "Denied" useless.

0 0
replied on June 27, 2018

Hi John, 

Is the gain of the stamp specifically to flag items as confidential or denied? You might want to look into using tag watermarks. You could set up an informational tag called 'confidential' that, when attached to a document, forces it to include a 'confidential' watermark inside of it that will be there on export and print. More information can be found here: https://www.laserfiche.com/support/webhelp/Laserfiche/10/en-US/administration/#../Subsystems/LFAdmin/Content/Tag%20Watermarks.htm

0 0
replied on June 27, 2018 Show version history

Hi John,

I know this isn't the "ideal" solution, but you could use Workflow with an SDK script to flatten the stamps onto the images so it wouldn't necessarily need to be done manually.

The overall process would involve using the DocumentExporter class to export the flattened page into a memory stream then immediately using DocumentImporter to bring the flattened page back into the document.

I've included some sample code below, but it may need to be adjusted depending on your specific circumstances; this sample checks each page and only flattens pages that have some kind of annotation.

   
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Data.SqlClient;
    using System.IO;
    using Laserfiche.RepositoryAccess;
    using Laserfiche.DocumentServices;

    public class Script1 : RAScriptClass102
    {
        protected override void Execute()
        {
            bool success = true;

            DocumentInfo doc = (DocumentInfo)this.BoundEntryInfo;
            doc.Lock(LockType.Exclusive);

            try{
                PageInfoReader pageReader = doc.GetPageInfos();

                foreach(PageInfo page in pageReader){
                    int pageNumber = page.PageNumber;
                    
                    if(page.HasImage && page.GetAnnotations().Count > 0){                        
                        // Create exporter and settings
                        DocumentExporter de = new DocumentExporter();
                        de.IncludeAnnotations = true;
                        de.BlackoutRedactions = true;
                        de.CompressionQuality = 100;
                        
                        // Write flattened document to memory stream
                        using (MemoryStream ms = new MemoryStream()){
                            // Export flattened page
                            de.ExportPage(doc, pageNumber, ms);
                            
                            // Remove old page and annotations
                            doc.DeletePage(pageNumber, PageDeletionOptions.ForcePurge);
                            
                            // Create document importer and settings
                            DocumentImporter di = new DocumentImporter();
                            di.OverwritePages = false;
                            di.OcrImages = false;
                            di.Document = doc;
                            di.PagePosition = pageNumber;
                            
                            // Import flattened page
                            di.ImportImages(ms);
                        }
                    }
                }

                // Save changes
                doc.Save();
            }
            catch(Exception ex){
                // Track failures
                success = false;
            }
            finally{
                // Release document
                doc.Unlock();
                doc.Dispose();

                // Set output token to track results in workflow
                SetTokenValue("Success",success);
            }
        }
    }
2 0
replied on October 21, 2024

Hello Jason,
Can you provide direction on what the script should look like if you only wanted to date stamp the first page of a document?

Thanks in advance.

Christine

0 0
replied on August 14, 2018

It was just brought to my attention that if you export a document as a PDF file from WebLink, a Stamp that was added to the document in Laserfiche appears in the PDF document as a text box.  This can easily be deleted using Adobe Reader.  It is beyond me what the developers were thinking when the Stamp feature was created.

0 0
replied on August 14, 2018 Show version history

That is not related to the stamp functionality, it is the export function.

Not sure why they chose to keep things that way in WebLink, but when exporting from the Client or using the SDK there is an option to Flatten Annotations so this doesn't occur.

What you're seeing is that the LF annotations are being exported as PDF annotations, which makes them editable.

Again, not saying I agree with that approach being the default in WebLink, but it is an issue with the export configuration, not the Stamp functionality.

2 0
replied on August 14, 2018

I believe WebLink would follow the flatten setting as set on the WebLink public user, so you can sign in to the windows or web client as that user and try toggling the setting. That way it will burn them on instead of trying to convert them to PDF annotations. 

Also, did you see my suggestion above about using watermarks? 

2 0
replied on September 19, 2023 Show version history

This was very helpful!

I found (and deselected) the setting in Tools/Options - Images.  See screenshots below.  Added the steps in my workflow that will generate pages, create a new entry for those pages to be moved into, assign field values to the new entry, move pages from the original doc into the new entry, Add the text box "date stamp" which allows the use of business process variables (because it is a text box), renames the entry, and deletes the original pdf.  

Thanks!

Christine

0 0
replied on September 20, 2023 Show version history

It looks like the annotation is lost if the image is printed from weblink.

That really was what I needed to accomplish.  A permanent text box that appears on the print job from weblink (after being converted to a pdf for printing by weblink).

The saga continues....

Christine

0 0
replied on February 29, 2024

Just saw this on the marketplace.  Has anyone worked with this?  I am interested in converting a tif (after date stamping) to a pdf?  It looks like there could be an option for that here?

https://marketplace.laserfiche.com/details/210806/Workflow-Activity-Bundle

0 0
You are not allowed to follow up in this post.

Sign in to reply to this post.