<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://artifex.com</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/blog/honoring-the-c-engine-legacy-while-embracing-pythonic-ease</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/kolena-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-layout-tutorial</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-split-pdfs-into-individual-pages-using-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/ghostscript-net</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/legal/docraptor-privacy-policy</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/product-documentation-portal</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/pdf-toolkit</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/optimizing-pdf-file-size-with-pymupdf-three-essential-techniques</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/critical-security-vulnerability-fixed-in-ghostscript</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/contact/ghostscript</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/saas</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-merge-pdfs-with-pymupdf-a-complete-guide</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/legal/smartoffice-eula</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-layout-10-faster-pdf-parsing-without-gpus</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/thankyou</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/automating-pdf-form-filling-and-flattening-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/converting-pdfs-to-images-with-pymupdf-a-complete-guide</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/adding-watermarks-to-pdfs-with-pymupdf-a-complete-guide</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-acquires-ghostscript.net-repository-boosts-c-sharp-developer-support</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/the-revamped-mupdf.com-new-language-bindings-and-expanded-llm-rag-support</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-reaches-settlement-with-big-tin-can-over-smartoffice-mobile-app-usage</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/products</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/contact/pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/visual-skus</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/introducing-the-new-pymupdf4llm-now-including-layout</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/what-is-pdf-based-layout-analysis</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-and-fnti-reach-settlement-over-mupdf-open-source-dispute</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-acquired-by-artifex</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/smartoffice-removed-from-app-stores-focus-sdk-enterprise</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/mupdf-js</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/pdf2docx</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-software-and-benq-reveal-plan-for-hardware-software-integration</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/fieldguide-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/announcing-mupdf-webviewer-a-modern-pdf-viewer-built-for-the-web</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/document-management</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/tonic-ai-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-announces-acquisition-of-docraptor</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-software-inc-files-lawsuit-for-copyright-infringement-against-siemens-product-lifecycle-management-software-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/text-extraction-strategies-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/docugami-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-search-and-replace-text-in-pdfs-using-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/licensing/gnu-agpl-v3</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/mupdf-removes-linearisation</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-reaches-settlement-with-entwrx-over-smartoffice-mobile-app</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/mobile</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/hybrid-ocr-in-pymupdf4llm</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/document-rendering</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf4llm-mcp-enhancing-llm-agents-with-high-quality-pdf-context</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/working-with-pdf-annotations-in-python</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/solutions/llm</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/legal/privacy</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-announces-improved-high-quality-fax-output</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/reseller</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/perplexity-ai</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/celebrating-our-achievement-achieving-soc-2-type-ii-compliance</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/more</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/mupdf-net</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-and-hancom-reach-settlement-over-ghostscript-open-source-dispute</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/support</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/unmasking-fake-redactions-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-layout-performance-on-doclaynet-a-comparative-evaluation</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/extracting-tables-from-pdfs-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contributor</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-10.01.0-disabling-silent-install-option</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/legal</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/notion-labs-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/ai</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/blog/rendering-separations-with-mupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/announcing-pymupdf-pro</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/building-a-rag-chatbot-gui-with-the-chatgpt-api-and-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/choosing-between-ghostscript-and-mupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/creating-a-rag-chatbot-with-chatgpt-and-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/explore-text-searching-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/extracting-and-creating-vector-graphics-in-a-pdf-using-python-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/extracting-text-from-multi-column-pages-a-practical-pymupdf-guide</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/highlighting-text-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/introducing-pymupdf4llm</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/introducing-the-mupdf.js-api</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/mastering-metadata-and-table-of-contents-manipulation-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/mupdf-js-latest-updates</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/mupdfjs-with-npm</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ocr-and-pdf-redactions-a-tale-of-two-technologies</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/optimizing-pdfs-with-ghostscript</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-1.24.3-and-farewell-to-fitz</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdfs-new-story-feature-provides-advanced-pdf-layout-styling</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/rag-llm-and-pdf-conversion-to-markdown-text-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/the-evolution-of-ghostpdl</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/the-revamped-mupdf.com-new-language-bindings-and-expanded-llm-rag-support</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/a-conversation-with-the-creator-of-ghostscript.net-josip-habjan</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/a-conversation-with-the-creator-of-pdf2docx-yun-jian</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/advanced-text-manipulation-using-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/an-improved-mupdf-api-using-c-plus-plus</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/an-introduction-to-memento-c-program-memory-debugging-library</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/cal-delivers-speed-to-pdl-processing</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/changes-to-the-pdf-interpreter</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/efficient-invoice-generation-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-at-35-a-testament-to-the-power-of-open-source</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-color-management-technology-awarded-u.s-patent</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-color-replacement-control</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-maintains-zero-coverity-defects</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-journal-with-pymupdf-pdf-journaling</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-layout-articles-using-pymupdfs-story-feature-part-2</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-merge-pdf-files-in-python</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/mastering-pdf-text-with-pymupdfs-insert-htmlbox-what-you-need-to-know</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/multi-threaded-use-of-mupdf-in-java</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/optional-content-discovering-the-pdf-layers-pymupdf-python</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pdf-interpreter-performance-improvements</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/power-of-localization</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-explored-image-handling-in-pdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/resilience-of-pymupdf-in-handling-interruptions-dbms-pdf-journaling</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/security-hardening-ghostscript</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/solving-common-issues-with-table-detection-and-extraction</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/table-recognition-extraction-from-pdfs-pymupdf-python</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/text-extraction-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/the-coming-of-pdf-2-0-part-1</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/the-coming-of-pdf-2-0-part-2</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/the-power-of-localization-en</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/products/pymupdf-pro</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/pymudf4llm</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/lg-ai-research</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/pymupdf-pro</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/top-10-developer-use-cases-for-python-pdf-libraries</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-security-resolved</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/downloads</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/security-vulnerability-fixed-in-ghostscript-10.01.2</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pdf-native-vs-vision-models-gemini-3</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-announces-acquisition</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/kahua-inc</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/epapyrus-announces-acquisition-of-bytescout</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/annotate-and-highlight-pdfs-with-pymupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/legal/security</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/developers</loc>
<priority>1</priority>
</url>
<url>
<loc>https://artifex.com/blog/vlms-in-document-processing-a-pragmatic-look-at-pdf-to-markdown-conversion</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/legal/app-privacy</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/whistleblower</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/rip</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/developers-bug-bounty-program</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/introducing-pymupdf4llm-a-breakthrough-in-pdf-to-markdown-conversion-for-python-developers</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/automation</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/kortext-ltd</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/licensing</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/ghostscript-enterprise</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/cloud</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/wonga</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/solutions/printers</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/zugferd-and-ghostscript</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/understanding-zugferd-the-future-of-e-invoices</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/why-data-chunking-is-essential-for-llm-processing</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-software-and-serendipity-software-donate-120000-for-australian-fire-relief-efforts</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/translating-pdfs-a-practical-pymupdf-guide</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/contact/mupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-at-europython-2023</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/artifex-continues-to-work-hard-for-you-from-home</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/building-a-multimodal-llm-application-with-pymupdf4llm</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/creating-zugferd-documents-with-ghostscript</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/extract-text-from-a-multi-column-document-using-pymupdf-inpython</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/getting-started-with-server-side-javascript-and-mupdf</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/ghostscript-non-icc-based-color-conversion-workflow</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/how-to-save-a-pdf-document-with-pymupdf-encryption-incremental-saving</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/introducing-mupdf.js-1.0</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/mupdf.net-the-sharp-addition-to-the-mupdf-family</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pdf-transparency-and-color</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/pymupdf-explored-low-level-access-to-pdf-objects</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/blog/rag-llm-and-pdf-enhanced-text-extraction</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://artifex.com/casestudy/hypori</loc>
<priority>0.5</priority>
</url>
</urlset>
