Technical FAQs

Question

I am combining multiple PDF documents together, and I need to create a new bookmark collection, placed at the beginning of the new document. Each bookmark should go to a specific page or section of the new document.
Example structure:

  • Section 1
    • Document 1
  • Section 2
    • Document 2

How might I do this using ImageGear .NET?

Answer

You are adding section dividers to the result document. So, for example, if you are to merge two documents, you might have, say, two sections, each with a single document, like so…

  • Section 1
    • Document 1
  • Section 2
    • Document 2

…The first page will be the first header page, and then the pages of Document 1, then another header page, then the pages of Document 2. So, the first header page is at index 0, the first page of Document 1 is at index 1, the second header is at 1 + firstDocumentPageCount, etc.

The following code demonstrates adding some blank pages to igResultDocument, inserting pages from other ImGearPDFDocuments, and modifying the bookmark tree such that it matches the outline above, with "Section X" pointing to the corresponding divider page and "Document X" pointing to the appropriate starting page number…

// Create new document, add pages
ImGearPDFDocument igResultDocument = new ImGearPDFDocument();
igResultDocument.CreateNewPage((int)ImGearPDFPageNumber.BEFORE_FIRST_PAGE, new ImGearPDFFixedRect(0, 0, 300, 300));
igResultDocument.InsertPages((int)ImGearPDFPageNumber.LAST_PAGE, igFirstDocument, 0, (int)ImGearPDFPageRange.ALL_PAGES, ImGearPDFInsertFlags.DEFAULT);
igResultDocument.CreateNewPage(igFirstDocument.Pages.Count, new ImGearPDFFixedRect(0, 0, 300, 300));
igResultDocument.InsertPages((int)ImGearPDFPageNumber.LAST_PAGE, igSecondDocument, 0, (int)ImGearPDFPageRange.ALL_PAGES, ImGearPDFInsertFlags.DEFAULT);

// Add first Section
ImGearPDFBookmark resultBookmarkTree = igResultDocument.GetBookmark();
resultBookmarkTree.AddNewChild("Section 1");
var child = resultBookmarkTree.GetLastChild();
int targetPageNumber = 0;
setNewDestination(igResultDocument, targetPageNumber, child);

// Add first Document
child.AddNewChild("Document 1");
child = child.GetLastChild();
targetPageNumber = 1;
setNewDestination(igResultDocument, targetPageNumber, child);

// Add second Section
resultBookmarkTree.AddNewChild("Section 2");
child = resultBookmarkTree.GetLastChild();
targetPageNumber = 1 + igFirstDocument.Pages.Count;
setNewDestination(igResultDocument, targetPageNumber, child);

// Add second Document
child.AddNewChild("Document 2");
child = child.GetLastChild();
targetPageNumber = 2 + igFirstDocument.Pages.Count;
setNewDestination(igResultDocument, targetPageNumber, child);

// Save
using (FileStream stream = File.OpenWrite(@"C:\path\here\test.pdf"))
{
    igResultDocument.Save(stream, ImGearSavingFormats.PDF, 0, 0, igResultDocument.Pages.Count, ImGearSavingModes.OVERWRITE);
}

...

private ImGearPDFDestination setNewDestination(ImGearPDFDocument igPdfDocument, int targetPageNumber, ImGearPDFBookmark targetNode)
{
    ImGearPDFAction action = targetNode.GetAction();
    if (action == null)
    {
        action = new ImGearPDFAction(
            igPdfDocument,
            new ImGearPDFDestination(
                igPdfDocument,
                igPdfDocument.Pages[targetPageNumber] as ImGearPDFPage,
                new ImGearPDFAtom("XYZ"),
                new ImGearPDFFixedRect(), 0, targetPageNumber));
        targetNode.SetAction(action);
    }
    return action.GetDestination();
}

(The setNewDestination method is a custom method that abstracts the details of adding the new destination.)

Essentially, the GetBookmark() method will allow you to get an instance representing the root of the bookmark tree, with its children being subtrees themselves. Thus, we can add a new child to an empty tree, then get the last child with GetLastChild(). Then, we can set the action for that node to be a new "GoTo" action that will navigate to the specified destination. Upon save to the file system, this should produce a PDF with the below bookmark structure…

Bookmarks example

Note that you may need to use the native Save method (NOT SaveDocument) described in the product documentation here in order to save a PDF file with the bookmark tree included. Also, you can read more about Actions in the PDF Specification.

Organized each year by ALM, LegalTech is one of the most important events for the legal industry. The conference brings together a broad variety of experienced legal professionals and innovative LegalTech providers to highlight the business, regulatory, technology, and talent trends in the market. In previous years, LegalTech was held in New York City and attended by more than 8000 people.

LegalTech 2021 Is Now Legalweek(year)

This year, however, the COVID-19 pandemic has forced the organizers to take a different approach. The first decision involved shifting LegalTech from an in-person conference to a fully virtual event in order to protect the health of both attendees and organizers. While many industry events have made a similar transition, the LegalTech team went a step further by breaking the conference into a series of five interactive virtual events held over the course of 2021. This new virtual series was dubbed Legalweek(year) and aims to provide legal professionals with a powerful resource for working through an unprecedented era.

“This decision was made to address the needs of our legal community during these trying times of COVID-19 and to provide the type of innovative education, solutions, and connections that is so crucial to legal leaders,” said ALM’s Mark Fried. “The 2021 series will set the stage for a resurgence in the legal sector and a big ‘Welcome Back’ to attendees for our in-person Legalweek event (in 2022).”

The first virtual Legalweek(year) event is scheduled for February 2-4, 2021 and will feature bestselling author and political leader Stacey Abrams, legal AI expert Josua Walker, and former New Jersey governor and federal prosecutor Chris Christie as keynote speakers. Attendees will not only be able to participate remotely, but they will also have an additional six months worth of on-demand access to virtual content following each event.

Visit the Accusoft Legalweek(year) Virtual Booth

As a longtime sponsor of LegalTech, Accusoft is proud to participate in this groundbreaking series of virtual events. The conference has historically been a great opportunity for us to speak directly with the independent software vendors and legal IT professionals about the latest industry trends and LegalTech applications. 

This year, we’ll be hosting a “virtual booth” through the Legalweek(year) event site. Whether you’re a developer looking to solve a particular software challenge or a project manager building an in-house solution for your firm, you’ll find plenty of resources and support at the Accusoft booth. Read through our numerous case studies and LegalTech whitepapers or schedule a meeting with one of our product specialists to learn more about our SDK and API integrations for legal software. You can even chat with someone in real time if you need a quick answer!

After completing registration, Legalweek(year) attendees can access the Accusoft virtual booth during the event simply by logging into their account.

Visit the Accusoft Virtual Booth

Our LegalTech Solutions

Accusoft’s combination of content processing and conversion integrations help today’s innovative LegalTech applications reach their full potential. As law firms and legal departments incorporate more technology into their everyday operations, they need software tools capable of automating workflows, simplifying eDiscovery, and facilitating secure collaboration.

PrizmDoc Viewer

Our feature-rich HTML5 document viewer allows users to seamlessly view a variety of document and image files within their secure web application. Thanks to PrizmDoc Viewer’s powerful REST APIs, developers can provide additional functionality, such as annotations and redactions, that is essential for legal organizations.

PrizmDoc Editor

In addition to allowing users to edit DOCX files within the secure confines of their LegalTech applications, PrizmDoc Editor’s automated document assembly features streamlines the contract creation process to improve efficiency and accuracy. Documents can be assembled programmatically, incorporating commonly used or specific clauses, special language, and client data to eliminate “cut and paste” errors. Once documents are assembled, PrizmDoc Editor’s sharing tools allow firms to control access and ensure that everyone is working from the same up-to-date version.

ImageGear

With the ability to read, convert, and compress a wide range of files, our ImageGear SDK integration provides LegalTech applications with the tools they need to manage almost any type of file collected during the eDiscovery process. Powerful optical character recognition (OCR) capabilities allow ImageGear to read a wide variety of languages from around the world and convert scanned documents into searchable plain text or PDF files.

LegalTech in 2021 and Beyond

As legal organizations continue to make strides toward achieving true digital transformation, they will need versatile LegalTech applications capable of adapting along with them. Accusoft’s family of SDK and API integrations can help developers leverage the power of their innovative software tools and free up resources to focus on improving their core capabilities.

We hope you’ll join us at Legalweek(year) on February 2-4, 2021. Our booth will be available throughout the virtual event, so stop by to find out how Accusoft can help you realize the potential of your LegalTech applications.

The top InsurTech news for 2020? In a post-pandemic world, insurance technology offers “the prescription for safety.” In a world now dominated by worry around what’s currently happening, what will probably happen, and what could suddenly happen under the right (or wrong) circumstances, the agile and adaptable potential of InsurTech offerings paves the way for proactive service delivery that both boosts consumer piece of mind and reduces insurer risk.

For insurance companies to capitalize on evolving market conditions and outpace the competition, data-driven decision making is key. Even more critical is the need to convert critical information from standardized ACORD formats into actionable, accessible data. Here’s how Accusoft’s FormSuite for Structured Forms can help.

The InsurTech Innovation

As noted by research firm PWC, “What used to be a sign of success may not be anymore.” Now, clients want next-day decisions about insurance applications and claims along with detailed descriptions of cost assessments and timelines for action. What does this mean in practice? 

That it’s no longer enough to rely on legacy solutions and applications to get the job done. Instead, companies need applications augmented by next-generation forms processing technology capable of integrating with internal assets while simultaneously delivering the data-driven decision-making inherently tied to quick, accurate, and complete insurance information capture.

Now more than ever, the fundamental value proposition for insurance companies is the ability to disrupt existing functional frameworks with new policies and practices that streamline document processing, improve decision timelines, and secure client data. 

The ACORD Form Challenge

If building better applications was the only challenge facing InsurTech product managers and development teams, companies would have their hands full. There’s also a common form type that can be challenging for automation.

Since 1972, ACORD has been the source of standardized forms for the insurance industry. While these forms are standard, there is nothing standard about their format. Every year, ACORD changes the format of its forms, leaving insurance organizations  with a challenge for automation. 

Despite generalized standardization which sees consistency in the type of data recorded by specific forms — including client information, claim details, and policy requirements — how this data is structured and displayed within the form itself can vary from provider to provider and even agent to agent. Forms used for identical purposes are often close in format, but not quite the same when it comes to placement of critical data. This compels insurance agencies to manually process common forms, in turn increasing both the risk of human error and the time required for completion.

For insurance application developers looking to create applications that can process ACORD forms more efficiently and deliver on customer expectations around speed and accuracy, FormSuite for Structured Forms provides the capability to create a standard form library for easy form recognition and data capture.

The FormSuite Solution: Document Delivery Done Right

FormSuite for Structured Forms can help insurance companies get the best of both worlds. With an Agile framework, this SDK is capable of streamlining the standardization of ACORD-compliant forms with a little help from developers.

Key benefits of this solution include:

  • Complete Forms Recognition Manual data entry and capture both reduces forms processing speed and can introduce the potential for significant errors. Form recognition toolkits allow developers to create form libraries for their users to scan and recognize forms for data capture. In practice, this means developers only need to update the library when a new ACORD form is released to ensure reliable and robust recognition. 
  • Accurate Data Capture With forms continually arriving from multiple sources, document standardization is often lacking. But no matter how forms are scanned into the system — upside down, sideways, or at differing resolutions — FormSuite uses its image cleanup functionality to deliver accurate forms processing.
  • Form Field DetectionFormSuite uses the application’s form library to identify form fields on standard forms and capture the data within each form field.
  • Optical Character RecognitionFrom optical character recognition (OCR) to intelligent character recognition (ICR) and optical mark recognition (OMR), FormSuite offers it all. Advanced OCR ensures your application can easily capture everything from legible hand printed names to check boxes and dollar amounts.
  • Confidence and Accuracy ReportingData confidence matters for insurance documents. If uncertainty about data translates to errors in evaluation or decision-making, the results could be disastrous for ongoing ROI. That’s why FormSuite for Structured Forms generates customized confidence and accuracy values for all data captured. Firms then send all document OCR capture for confidence evaluation; if results meet or exceed confidence thresholds, document processing can continue automatically. If confidence levels are too low, meanwhile, your app can trigger employee review to ensure data entered matches captured results.

Embracing the InsurTech Advantage

Just as other industries have faced significant disruption this year, insurance companies now find themselves at an operational crossroads. While augmenting familiar forms and functions with application overlays offers the potential to improve on existing processes, firms must also build out apps and services capable of delivering accessible, actionable, and accurate ACORD forms data to staff. When they commit to doing this, insurance companies can deliver on the proactive promise of digital-first insurance with policies and processes capable of keeping pace with evolving client expectations.

Ready to improve insurance processes? Discover FormSuite for Structured Forms and deliver on document potential.

The simultaneous development of Pfizer and Moderna’s safe and effective COVID-19 vaccines in less than a year stands as one of the great feats of recent medical science. Now that the vaccines are available, however, the healthcare industry and government authorities must take on the new challenge of distributing doses to the population quickly and effectively. In some respects, this logistical feat will be every bit as daunting as developing the vaccines themselves.

Fortunately, the use of barcoding in healthcare supply chains and patient records will prove incredibly helpful in overcoming some of the key difficulties in vaccine distribution. Medical barcodes are already being used in many essential applications. For organizations that have yet to fully embrace the potential of digital transformation, barcode processing integrations can help them quickly expand their capabilities to meet the growing demands of vaccine delivery.

4 Ways Medical Barcodes Solve Vaccine Delivery Challenges

1. Better Supply Chain Accuracy Means Less Waste

Given the high costs of manufacturing and distributing the vaccines, there is justifiable concern over the potential for waste. Both versions of the vaccine need to be kept at low temperatures for shipping after manufacture (approximately -90 degrees Fahrenheit for Pfizer and about -10 degrees for Moderna). Once they’re moved to a refrigerator for administration, they cannot be refrozen. While the Moderna vaccine can last for up to 30 days refrigerated (provided the vial is not punctured), the Pfizer vaccine must be discarded after a mere six hours. Further complicating matters, each Pfizer thermal shipping container can potentially hold up to 975 multidose vials (4875 individual doses), whereas each box of Moderna vaccine contains 10 vials (100 doses).

Without accurate inventory and shipment tracking, healthcare providers could easily end up with too much supply in one location and not enough elsewhere. In a worst case scenario, unused doses might even go to waste because they can’t be redirected to another site quickly enough. By incorporating medical barcode scanning throughout the supply chain, healthcare organizations can ensure more efficient distribution during the shipping process. They can also verify that delivery sites have the appropriate storage capacity ahead of time to avoid the possibility of doses going to waste due to lack of freezer space.

2. Improved Dosage Records

One of the key challenges with distributing the currently approved vaccines is that they require multiple doses. Although the doses are identical from a chemical composition and dosage standpoint, the problem is that they must be administered after a specified interval. According to the FDA, that interval is approximately 21 days for the Pfizer vaccine and 28 days for the Moderna vaccine. As healthcare providers work to deliver the vaccine effectively, they must keep accurate records to show who has received the first dose and how much supply of each vaccine shipment should be designated for second doses.

The ability to read and print barcodes providers quickly track where patients are in the vaccination process and ensure that second doses will be available at the appropriate time. This is especially important considering that the vaccines are not interchangeable. Once someone has received the first Pfizer dose, for instance, they should not receive the Moderna vaccine for their second dose (except in exceptional circumstances). By generating a specific barcode after the initial dose and including it with a patient’s health records, providers can quickly and easily match people with the correct vaccine and make sure they have available doses on hand.

3. Keeps Essential Medical Equipment On-Hand

Vaccine distribution involves more than just shipping the doses themselves. Many different accessories are required to administer the vaccine, including protective equipment, vials, rubber stoppers, syringes and needles, and alcohol swabs. Healthcare supply chains were already under significant strain throughout the pandemic, so it should not be taken for granted that providers will have everything they need when the vaccine arrives. Furthermore, as the overall pace of vaccinations increases, it will be important to keep an accurate count of available equipment, especially if a provider does a lot of off-site vaccinations.

Barcoding in healthcare is critical to establishing connections between different elements of the supply chain. By using medical barcode integrations, providers can track and coordinate every piece of equipment needed for vaccine delivery in near-real time. Incorporating the same barcodes into patient records also gives a more up-to-date inventory count as doses are administered, ensuring that hospitals and healthcare facilities don’t run out of essential equipment when they need it most.

4. Expands Distribution Beyond Traditional Supply Chain

Distributing the vaccine in major population centers is difficult enough, but extending delivery into underserved rural areas presents a different set of challenges. These areas often lack the supply chain infrastructure to accommodate the rapid and widespread transfer of medical products. Healthcare providers will need technology tools that allow them to set up remote distribution and treatment centers capable of coordinating with local communities in order to extend their reach into these areas.

While barcoding in healthcare may provide the visibility organizations need into vaccine logistics and patient records, certain regions will also require mobile medical barcode integrations that can put more power and control into the hands of field workers. Rugged, reliable barcode integrations capable of reading broken or damaged barcodes using any mobile device will be essential for overcoming the limitations of rural digital infrastructure.

Unlock the Potential of Barcoding in Healthcare with Barcode Xpress

Accusoft’s Barcode Xpress SDK integration helps healthcare applications read, write, and detect more than thirty different barcode types, even if those images are damaged, broken, or incomplete. With the ability to read multiple barcodes at speeds of up to 1,000 pages per minute, Barcode Xpress can help medical providers take control of their supply chains and manage patient records more efficiently. That same functionality can be extended even further thanks to Barcode Xpress Mobile, which can turn any iOS or Android device into a powerful barcode scanner.

Distributing COVID-19 vaccine doses is one of the great logistical undertakings of the 21st century. By expanding the usage of barcoding in healthcare, providers can create greater transparency into their supply chains to reduce waste and deliver the vaccine more efficiently to the patients who need it most. Find out how Accusoft’s Barcode Xpress can help the medical industry upgrade its infrastructure to meet the challenge of restoring a sense of normalcy to people’s lives and overcoming the pandemic. Try a hands-on demo of our barcode SDK today.

scalable vector graphics

The scalable vector graphic (SVG) format continues to enjoy steady adoption across the web. According to data from W3Techs, SVG now accounts for 25 percent of website images worldwide. But it wasn’t always this way. In 1998, it became apparent that vector-based graphics had a future on the web, and the W3C received six different file format submissions from technology companies that year. Some were mere proposals ready for a complete revamp, while others were proprietary products that W3C wasn’t permitted to modify. Instead of forging a format from one of the submissions, however, W3C’s SVG working group decided to start from the ground up — and SVG was born.

While the file format had lofty ambitions, focusing on common use rather than specific syntax, the original iteration was cumbersome and complex. However, SVG has improved year after year after year. With increased support came more streamlined functionality and usable features. Now, SVG is often the first choice for meeting the evolving demands of scalable, responsive, and accessible web content.


What is a Scalable Vector Graphic (SVG) and how does it work?

Today, SVG is the de-facto standard for vector-based browser graphics. But what exactly is this file format, and how does it work?

Based on XML, SVG supports three broad types of objects: 

  • Vector graphics including paths and outlines that are both straight and curved
  • Bitmap images such as .jpeg, .gif, and .png
  • Text

What sets SVG apart from bitmap-based images is the use of lines and curves along the edges of graphical objects. Because bitmap images use a fixed set of pixels, scaling them up creates blurriness where the edges of pixels meet. In the case of vector images, meanwhile, a fixed-shape approach allows the preservation of smooth lines and curves no matter the image size.

SVG also offers the benefit of interoperability. Because it’s a W3C open standard, SVG plays well with both other image format and web markup languages including JavaScript, DOM, CSS, and HTML. This allows the format to easily support responsive design approaches that scale websites and web content based on the user device rather than defining standardized size parameters. Thanks to the curves and lines of SVG, scaling presents no problem for responsive designers looking to ensure consistency across device types.


The Benefits of SVG

While scalability is often cited as the biggest benefit of SVG, this format also offers other advantages, including:

  • Responsiveness — Images can be easily scaled up or down and modified as necessary to meet web design and development demands.
  • Accessibility — Since SVG is text-based, content can be indexed and searched, allowing both users and developers to quickly find what they’re looking for.
  • Performance Image rendering is quick and doesn’t require substantive resources, allowing sites to load quickly and completely.
  • Use in Web ApplicationsBrowser incompatibilities and missing functions often frustrate web design efforts, forcing developers to use multiple tool sets and spend time checking content and images for potential format conflicts. SVG, meanwhile, offers powerful scripting and event support, in turn allowing developers to leverage it as a platform for both graphically rich applications and user interfaces. The result? Better-looking sites that enhance the overall user experience.
  • InteroperabilityBecause SVG is based on W3C standards, the format is entirely interoperable, meaning developers aren’t tied to any specific implementation, vendor, or authoring tool. From building their own framework from the ground up to leveraging third-party SVG applications, web developers can find their format best-fit.

SVG in PrizmDoc Viewer

Accusoft’s PrizmDoc Viewer offers multiple ways for developers to make the most of SVG elements at scale, such as:

  • File TransformationConversion is critical for effective and efficient web design. If development teams need different file transformation tools for every format, the timeline for web projects expands significantly. PrizmDoc Viewer streamlines this process with support for the conversion of more than 100 file types — including PDFs, Microsoft Office files, HTML, EML, rich text, and images — into browser-compliant SVG outputs. In practice, this permits near-native document and image rendering that’s not only fast, but also accessible anytime, anywhere, and from any device.
  • HTML5 FunctionalityUsing SVG in PrizmDoc Viewer is made easier thanks to native HTML5 design. The use of HTML5-native framework not only improves load times with smaller document sizes but means that PrizmDoc Viewer works in all modern web browsers — while also dramatically enhancing document display quality.
  • Pre-Conversion One of the biggest challenges with viewing large documents in a browser is delay. Pages toward the end of the document may take longer to load and frustrate users looking to quickly find a specific image or piece of information. PrizmDoc Viewer solves this problem with a pre-conversion API that returns the first page as an SVG while the rest of the document is being converted, allowing users to interact with documents as conversion takes place and lowering the chance that files will experience format-based delays.

SVG hasn’t always been the go-to web image format. Despite a promising start based on open, interoperable standards, the lack of early support and specific use cases for vector-based file formats saw SVG sitting on the sidelines for decades. 

The advent of on-demand access requirements and mobile-first development realities has changed the conversation. SVG is now continuously gaining ground as companies see the benefit in this scalable, streamlined, and superior-quality file format. Get the big picture and see SVG in action with our online document viewing demo, or start a free PrizmDoc Viewer trial today!

As part of our ongoing commitment to supporting the LegalTech industry in its effort to transform the processes used by law firms and legal departments, Accusoft recently sponsored an educational webinar in conjunction with Law.com entitled “Build or Buy? Learning Which Is Best for Your Firm or Department.” Hosted by Zach Warren, editor-in-chief of Legaltech News, the webinar featured Neeraj Rajpal, CIO of Stroock & Stroock & Lavan, and Kelly Wehbi, Head of Product at Gravity Stack, a subsidiary of the Reed Smith law firm. 

Together, the panelists brought two unique perspectives to the ongoing “build vs buy” debate, both from the software vendors who provide LegalTech solutions and the decision makers working at the legal firms who make difficult decisions regarding technology solutions.

Build vs Buy: The Choices Before the Decision

Both Rajpal and Wehbi agree that any decision involving building or buying technology solutions has to begin with defining the problem a firm needs to solve. Regardless of whether you’re working with an independent legal firm or a legal department within a larger organization, it’s critical to understand the business problem, existing pain points, and potential value of a solution.

“When you start asking the right questions,” Raijpal notes, “you sometimes come across a situation where the requirements are not very clearly defined and that is a big red flag to me because when requirements are not defined, you’re not solving anything.”

Wehbi shares that concern about the requirements gathering process, pointing out that things tend to go wrong when firms fail to consider both the scope and magnitude of the challenge they’re trying to overcome. “Organizations can struggle a lot when they jump a little too quickly to a solution or to thinking about just what the return would be on a potential new product or service offered.”

It’s also critical to make sure that the firm is willing to accept some degree of change. If existing business processes are unclear or if no one is willing to consider changing how they work, then no amount of technology is going to make a difference. Understanding the culture of the firm and securing the buy-in from leadership is absolutely critical to making any technology integration succeed whether you’re buying a solution or building one from scratch. 

The Pros and Cons of Building LegalTech Solutions

For an organization that has the resources, methodologies, and skill sets necessary to develop a solution that’s specifically designed to meet its unique requirements, building can be a great decision. The key advantage here is that it focuses specifically on the firm’s processes and user pain points, allowing developers to design a solution that is much more targeted than an “off-the-shelf” product.

Benefits of Building

  • Applications can be customized to your exact specifications, allowing them to better address your specific business needs.
  • Since you manage the solution from end to end, you retain much more control in terms of application features and functionality, how data is managed, and access security.
  • Developing a specialized solution creates room for innovative technology that can provide a competitive edge.
  • A custom-built solution presents fewer integration challenges, especially when it comes to interfacing with legacy systems used by many legal organizations.

Risks of Building

  • Building a new solution from the ground up requires a great deal of time and resources that might be better spent elsewhere.
  • Investing in custom software creates substantial technical debt that must be maintained over time and could create integration problems in the future when additional upgrades are required.
  • If the new solution doesn’t contribute enough to the bottom line to justify the cost of operations, it could lead to negative economies of scale that make it difficult for the firm to grow its business.

The Pros and Cons of Buying LegalTech Solutions

Not every organization has the development resources to build a customized solution from the ground up. If they’re not ready to make that capital investment, a cloud-based offering may be better suited to their needs. Leveraging a proven, ready-to-launch SaaS solution offers a number of advantages, but could impact how the company makes technology decisions in the future.

Benefits of Buying

  • Since SaaS services are usually cheaper and easier to implement, they are often the best option for companies with limited IT resources.
  • Cloud solutions are good for solving common technology problems that smaller firms face.
  • Already-live functionality means SaaS solutions can be implemented on a faster time frame.
  • The cloud vendor handles all building and maintenance costs associated with the platform.
  • Since the vendor sets up workflows and integrations as well as troubleshooting, your internal team is freed up to focus on other tasks.

Risks of Buying

  • Off-the-shelf solutions offer less customization and control over infrastructure and data.
  • Even industry-specific SaaS solutions are built for a general market in mind, so their features may not solve your firm’s unique requirements.
  • Since the vendor manages security, customers have less oversight over how their sensitive data is managed.
  • Working with a SaaS provider exposes firms to market risk. If the vendor goes out of business or sunsets a product, it may be difficult to repatriate data or transition to another provider.

When to Build

For firms with the development resources that are already using in-house document management solutions to streamline processes, SDK and API integrations are often the best way to enhance functionality. Accusoft’s PrizmDoc Suite leverages REST APIs and advanced HTML controls to provide powerful document viewing, conversion, editing, and assembly capabilities to web-based applications. Our SDK integrations also allow developers to build the functionality they need directly into their software at the code level.

Document Assembly

Law firms need automation solutions that allow them to easily create and manage multi-part, multi-stage contracts. Thanks to Accusoft’s PrizmDoc Editor, legal teams can rapidly identify and assemble sections of pre-existing text into new content that is both editable and searchable. PrizmDoc Editor integrates securely into existing applications and delivers in-browser support to help lawyers assemble assets without resorting to risky external dependencies.

Case Management

LegalTech applications can manage and review cases much more efficiently by integrating data capture, file conversion, and optical character recognition (OCR) capabilities. The ImageGear SDK helps legal teams access case data in a variety of formats without the need for downloading additional files or relying on third-party viewing applications. It can also convert multiple file types into secure and searchable PDF/A documents, making it easy to tag files with client numbers, names, and other identifiable information. Thanks to PDF/A functionality, ImageGear ensures that firms can stay on the right side of federal regulations.

eDiscovery

The rapid transition to predominantly digital documents has fundamentally altered the way legal organizations approach the discovery process. Innovative eDiscovery processes can streamline case management while also protecting client interests. In order to implement these strategies effectively, firms need applications that provide extensive file format support and search functionality as well as redaction and digital rights management (DRM) tools capable of protecting client privacy. PrizmDoc Viewer delivers these features along with scalable annotation capabilities that make it easier for collaborators to proofread, review, and make comments to case files without creating version confusion. As an end-to-end eDiscovery toolkit, our HTML5 viewer also includes whitelabeling support so it can be fully integrated into your application’s branding.

When to Buy

For smaller legal teams looking for broad functionality without development hassles or a new firm taking its first steps toward document automation, it often makes more sense to implement a bundled, buy-in solution like Accusoft’s Docubee SaaS platform.

Document Completion

Docubee makes document management easy with drag and drop data routing. Users can quickly create legal contracts, route the appropriate data to documents, deliver contracts for approval, and facilitate signing with secure eSignature technology. 

Customized Templates

With Docubee, legal teams can create customized document templates and manage them on a section-by-section basis. Individual clauses can be added or removed as needed, allowing attorneys to repurpose document templates instead of creating them from scratch for every client. 

End-to-End Support

Two-way communication support helps firms to build better dockets and negotiate more effectively. Documents can be updated automatically and version controls ensure that everyone is always looking at the most up-to-date version of a contract. Docubee also allows users to prioritize key tasks with collaborative redlining and notification tools.

Long-Term Storage and Security

Docubee stores data for up to six years to meet eDiscovery requirements. To better protect client privacy and meet changing compliance requirements, firms can also set destruction dates for contracts, templates, and case files. Docubee is SOC2 compliant, featuring multi-layer encryption to keep data under tight lock and key.

Hear the Full Conversation

To hear the full webinar and learn more about how legal firms make the difficult choice between building or buying their next technology solution, sign up now to get access to an on-demand recording of the event. If you’re ready to learn more about how Accusoft technology is helping to power innovation in the legal industry by delivering the latest in content processing, conversion, and automation solutions, visit our legal industry solutions page or contact us today to speak to one of our product experts.

Question

I am trying to perform OCR on a PDF created from a scanned document. I need to rasterize the PDF page before importing the page into the recognition engine. When rasterizing the PDF page I want to set the bit depth of the generated page to be equal to the bit depth of the embedded image so I may use better compression methods for 1-bit and 8-bit images.

ImGearPDFPage.DIB.BitDepth will always return 24 for the bit depth of a PDF. Is there a way to detect the bit depth based on the PDF’s embedded content?

Answer

To do this:

  1. Use the ImGearPDFPage.GetContent() function to get the elements stored in the PDF page.
  2. Then loop through these elements and check if they are of the type ImGearPDEImage.
  3. Convert the image to an ImGearPage and find it’s bit depth.
  4. Use the highest bit depth detected from the images as the bit depth when rasterizing the page.

The code below demonstrates how to do detect the bit depth of a PDF page for all pages in a PDF document, perform OCR, and save the output while using compression.

private static void Recognize(ImGearRecognition engine, string sourceFile, ImGearPDFDocument doc)
    {
        using (ImGearPDFDocument outDoc = new ImGearPDFDocument())
        {
            // Import pages
            foreach (ImGearPDFPage pdfPage in doc.Pages)
            {
                int highestBitDepth = 0;
                ImGearPDEContent pdeContent = pdfPage.GetContent();
                int contentLength = pdeContent.ElementCount;
                for (int i = 0; i < contentLength; i++)
                {
                    ImGearPDEElement el = pdeContent.GetElement(i);
                    if (el is ImGearPDEImage)
                    {
                        //create an imGearPage from the embedded image and find its bit depth
                        int bitDepth = (el as ImGearPDEImage).ToImGearPage().DIB.BitDepth; 
                        if (bitDepth > highestBitDepth)
                        {
                            highestBitDepth = bitDepth;
                        }
                    }
                }
                if(highestBitDepth == 0)
                {
                    //if no images found in document or the images are embedded deeper in containers we set to a default bitDepth of 24 to be safe
                    highestBitDepth = 24;
                }
                ImGearRasterPage rasterPage = pdfPage.Rasterize(highestBitDepth, 200, 200);
                using (ImGearRecPage recogPage = engine.ImportPage(rasterPage))
                {
                    recogPage.Image.Preprocess();
                    recogPage.Recognize();
                    ImGearRecPDFOutputOptions options = new ImGearRecPDFOutputOptions() { VisibleImage = true, VisibleText = false, OptimizeForPdfa = true, ImageCompression = ImGearCompressions.AUTO, UseUnicodeText = false };
                    recogPage.CreatePDFPage(outDoc, options);
                }
            }
            outDoc.SaveCompressed(sourceFile + ".result.pdf");
        }
    }

For the compression type, I would recommend setting it to AUTO. AUTO will set the compression type depending on the image’s bit depth. The compression types that AUTO uses for each bit depth are: 

  • 1 Bit Per Pixel – ImGearCompressions.CCITT_G4
  • 8 Bits Per Pixel – ImGearCompressions.DEFLATE
  • 24 Bits Per Pixel – ImGearCompressions.JPEG

Disclaimer: This may not work for all PDF documents due to some PDF’s structure. If you’re unfamiliar with how PDF content is structured, we have an explanation in our documentation. The above implementation of this only checks one layer into the PDF, so if there were containers that had images embedded in them, then it will not detect them.

However, this should work for documents created by scanners, as the scanned image should be embedded in the first PDF layer. If you have more complex documents, you could write a recursive function that goes through the layers of the PDF to find the images.

The above code will set the bit depth to 24 if it wasn’t able to detect any images in the first layer, just to be on the safe side.