<!doctype html><html ⚡ lang="en-US"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="msvalidate.01" content="CECF9CA25218893043B1867B145EE0D7"><meta name="referrer" content="no-referrer-when-downgrade"><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1'><title>Java PDF Blog | IDR Solutions</title><meta name="description" content="This blog is written by the developers at IDRsolutions about all things related to PDF, Java, HTML5, SVG and other tech related topics. It includes tutorials on the PDF format, interesting links, things we discover, moans about Java or PDF and things we find out in the course of developing and maintaining a PDF library written in Java.">
<link rel="canonical" href="https://blog.idrsolutions.com/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Java PDF Blog | IDR Solutions"><meta name="twitter:description" content="This blog is written by the developers at IDRsolutions about all things related to PDF, Java, HTML5, SVG and other tech related topics. It includes tutorials on the PDF format, interesting links, things we discover, moans about Java or PDF and things we find out in the course of developing and maintaining a PDF library written in Java.">
<meta name="twitter:site" content="@JavaPDF">
<script type="application/ld+json" class="yoast-schema-graph">"{\"@context\":\"https://schema.org\",\"@graph\":[{\"@id\":\"https://blog.idrsolutions.com/\",\"@type\":\"CollectionPage\",\"about\":{\"@id\":\"https://blog.idrsolutions.com/#organization\"},\"breadcrumb\":{\"@id\":\"https://blog.idrsolutions.com/#breadcrumb\"},\"description\":\"This blog is written by the developers at IDRsolutions about all things related to PDF, Java, HTML5, SVG and other tech related topics. It includes tutorials on the PDF format, interesting links, things we discover, moans about Java or PDF and things we find out in the course of developing and maintaining a PDF library written in Java.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https://blog.idrsolutions.com/#website\"},\"name\":\"Java PDF Blog | IDR Solutions\",\"url\":\"https://blog.idrsolutions.com/\"},{\"@id\":\"https://blog.idrsolutions.com/#breadcrumb\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"name\":\"Home\",\"position\":1}]},{\"@id\":\"https://blog.idrsolutions.com/#website\",\"@type\":\"WebSite\",\"description\":\"PDF tips and JPedal highlights\",\"inLanguage\":\"en-US\",\"name\":\"IDRsolutions Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueName\":\"search_term_string\",\"valueRequired\":true},\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https://blog.idrsolutions.com/?s={search_term_string}\"}}],\"publisher\":{\"@id\":\"https://blog.idrsolutions.com/#organization\"},\"url\":\"https://blog.idrsolutions.com/\"},{\"@id\":\"https://blog.idrsolutions.com/#organization\",\"@type\":\"Organization\",\"image\":{\"@id\":\"https://blog.idrsolutions.com/#/schema/logo/image/\"},\"logo\":{\"@id\":\"https://blog.idrsolutions.com/#/schema/logo/image/\",\"@type\":\"ImageObject\",\"caption\":\"IDR Solutions\",\"contentUrl\":\"https://blog.idrsolutions.com/app/uploads/2018/12/idr-logo.jpg\",\"height\":400,\"inLanguage\":\"en-US\",\"url\":\"https://blog.idrsolutions.com/app/uploads/2018/12/idr-logo.jpg\",\"width\":400},\"name\":\"IDR Solutions\",\"sameAs\":[\"https://www.facebook.com/idrsolutions\",\"https://x.com/JavaPDF\",\"https://www.linkedin.com/company/idrsolutions\",\"https://www.youtube.com/user/idrsolutions\"],\"url\":\"https://blog.idrsolutions.com/\"}]}"</script>
<link rel='dns-prefetch' href='//cdnjs.cloudflare.com'><link rel='dns-prefetch' href='//maxcdn.bootstrapcdn.com'><link rel="alternate" type="application/rss+xml" title="Java PDF Blog &#187; Feed" href="https://blog.idrsolutions.com/feed/"><link rel="alternate" type="application/rss+xml" title="Java PDF Blog &#187; Comments Feed" href="https://blog.idrsolutions.com/comments/feed/"><style id="wp-img-auto-sizes-contain-inline-css">img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}</style><style id="wp-block-library-inline-css">:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media(min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap !important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal !important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html:where(.has-border-color){border-style:solid}html:where([style*=border-color]){border-style:solid}html:where([style*=border-top-color]){border-top-style:solid}html:where([style*=border-right-color]){border-right-style:solid}html:where([style*=border-bottom-color]){border-bottom-style:solid}html:where([style*=border-left-color]){border-left-style:solid}html:where([style*=border-width]){border-style:solid}html:where([style*=border-top-width]){border-top-style:solid}html:where([style*=border-right-width]){border-right-style:solid}html:where([style*=border-bottom-width]){border-bottom-style:solid}html:where([style*=border-left-width]){border-left-style:solid}html:where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html:where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html:where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}</style><style id="classic-theme-styles-inline-css">.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px)calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}</style><style id="global-styles-inline-css">:root{--wp--preset--aspect-ratio--square:1;--wp--preset--aspect-ratio--4-3:4/3;--wp--preset--aspect-ratio--3-4:3/4;--wp--preset--aspect-ratio--3-2:3/2;--wp--preset--aspect-ratio--2-3:2/3;--wp--preset--aspect-ratio--16-9:16/9;--wp--preset--aspect-ratio--9-16:9/16;--wp--preset--color--black:#000000;--wp--preset--color--cyan-bluish-gray:#abb8c3;--wp--preset--color--white:#ffffff;--wp--preset--color--pale-pink:#f78da7;--wp--preset--color--vivid-red:#cf2e2e;--wp--preset--color--luminous-vivid-orange:#ff6900;--wp--preset--color--luminous-vivid-amber:#fcb900;--wp--preset--color--light-green-cyan:#7bdcb5;--wp--preset--color--vivid-green-cyan:#00d084;--wp--preset--color--pale-cyan-blue:#8ed1fc;--wp--preset--color--vivid-cyan-blue:#0693e3;--wp--preset--color--vivid-purple:#9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple:linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan:linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange:linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red:linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray:linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum:linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple:linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux:linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk:linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean:linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass:linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight:linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small:13px;--wp--preset--font-size--medium:20px;--wp--preset--font-size--large:36px;--wp--preset--font-size--x-large:42px;--wp--preset--spacing--20:0.44rem;--wp--preset--spacing--30:0.67rem;--wp--preset--spacing--40:1rem;--wp--preset--spacing--50:1.5rem;--wp--preset--spacing--60:2.25rem;--wp--preset--spacing--70:3.38rem;--wp--preset--spacing--80:5.06rem;--wp--preset--shadow--natural:6px 6px 9px rgba(0,0,0,0.2);--wp--preset--shadow--deep:12px 12px 50px rgba(0,0,0,0.4);--wp--preset--shadow--sharp:6px 6px 0px rgba(0,0,0,0.2);--wp--preset--shadow--outlined:6px 6px 0px -3px rgb(255,255,255),6px 6px rgb(0,0,0);--wp--preset--shadow--crisp:6px 6px 0px rgb(0,0,0)}:where(body){margin:0}:where(.is-layout-flex){gap:.5em}:where(.is-layout-grid){gap:.5em}body .is-layout-flex{display:flex}.is-layout-flex{flex-wrap:wrap;align-items:center}.is-layout-flex>:is(*,div){margin:0}body .is-layout-grid{display:grid}.is-layout-grid>:is(*,div){margin:0}body{padding-top:0;padding-right:0;padding-bottom:0;padding-left:0}:root:where(.wp-element-button,.wp-block-button__link){background-color:#32373c;border-width:0;color:#fff;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;padding-top:calc(.667em + 2px);padding-right:calc(1.333em + 2px);padding-bottom:calc(.667em + 2px);padding-left:calc(1.333em + 2px);text-decoration:none;text-transform:inherit}.has-black-color{color:var(--wp--preset--color--black) !important}.has-cyan-bluish-gray-color{color:var(--wp--preset--color--cyan-bluish-gray) !important}.has-white-color{color:var(--wp--preset--color--white) !important}.has-pale-pink-color{color:var(--wp--preset--color--pale-pink) !important}.has-vivid-red-color{color:var(--wp--preset--color--vivid-red) !important}.has-luminous-vivid-orange-color{color:var(--wp--preset--color--luminous-vivid-orange) !important}.has-luminous-vivid-amber-color{color:var(--wp--preset--color--luminous-vivid-amber) !important}.has-light-green-cyan-color{color:var(--wp--preset--color--light-green-cyan) !important}.has-vivid-green-cyan-color{color:var(--wp--preset--color--vivid-green-cyan) !important}.has-pale-cyan-blue-color{color:var(--wp--preset--color--pale-cyan-blue) !important}.has-vivid-cyan-blue-color{color:var(--wp--preset--color--vivid-cyan-blue) !important}.has-vivid-purple-color{color:var(--wp--preset--color--vivid-purple) !important}.has-black-background-color{background-color:var(--wp--preset--color--black) !important}.has-cyan-bluish-gray-background-color{background-color:var(--wp--preset--color--cyan-bluish-gray) !important}.has-white-background-color{background-color:var(--wp--preset--color--white) !important}.has-pale-pink-background-color{background-color:var(--wp--preset--color--pale-pink) !important}.has-vivid-red-background-color{background-color:var(--wp--preset--color--vivid-red) !important}.has-luminous-vivid-orange-background-color{background-color:var(--wp--preset--color--luminous-vivid-orange) !important}.has-luminous-vivid-amber-background-color{background-color:var(--wp--preset--color--luminous-vivid-amber) !important}.has-light-green-cyan-background-color{background-color:var(--wp--preset--color--light-green-cyan) !important}.has-vivid-green-cyan-background-color{background-color:var(--wp--preset--color--vivid-green-cyan) !important}.has-pale-cyan-blue-background-color{background-color:var(--wp--preset--color--pale-cyan-blue) !important}.has-vivid-cyan-blue-background-color{background-color:var(--wp--preset--color--vivid-cyan-blue) !important}.has-vivid-purple-background-color{background-color:var(--wp--preset--color--vivid-purple) !important}.has-black-border-color{border-color:var(--wp--preset--color--black) !important}.has-cyan-bluish-gray-border-color{border-color:var(--wp--preset--color--cyan-bluish-gray) !important}.has-white-border-color{border-color:var(--wp--preset--color--white) !important}.has-pale-pink-border-color{border-color:var(--wp--preset--color--pale-pink) !important}.has-vivid-red-border-color{border-color:var(--wp--preset--color--vivid-red) !important}.has-luminous-vivid-orange-border-color{border-color:var(--wp--preset--color--luminous-vivid-orange) !important}.has-luminous-vivid-amber-border-color{border-color:var(--wp--preset--color--luminous-vivid-amber) !important}.has-light-green-cyan-border-color{border-color:var(--wp--preset--color--light-green-cyan) !important}.has-vivid-green-cyan-border-color{border-color:var(--wp--preset--color--vivid-green-cyan) !important}.has-pale-cyan-blue-border-color{border-color:var(--wp--preset--color--pale-cyan-blue) !important}.has-vivid-cyan-blue-border-color{border-color:var(--wp--preset--color--vivid-cyan-blue) !important}.has-vivid-purple-border-color{border-color:var(--wp--preset--color--vivid-purple) !important}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background:var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background:var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background:var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background:var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background:var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important}.has-cool-to-warm-spectrum-gradient-background{background:var(--wp--preset--gradient--cool-to-warm-spectrum) !important}.has-blush-light-purple-gradient-background{background:var(--wp--preset--gradient--blush-light-purple) !important}.has-blush-bordeaux-gradient-background{background:var(--wp--preset--gradient--blush-bordeaux) !important}.has-luminous-dusk-gradient-background{background:var(--wp--preset--gradient--luminous-dusk) !important}.has-pale-ocean-gradient-background{background:var(--wp--preset--gradient--pale-ocean) !important}.has-electric-grass-gradient-background{background:var(--wp--preset--gradient--electric-grass) !important}.has-midnight-gradient-background{background:var(--wp--preset--gradient--midnight) !important}.has-small-font-size{font-size:var(--wp--preset--font-size--small) !important}.has-medium-font-size{font-size:var(--wp--preset--font-size--medium) !important}.has-large-font-size{font-size:var(--wp--preset--font-size--large) !important}.has-x-large-font-size{font-size:var(--wp--preset--font-size--x-large) !important}</style><link rel='stylesheet' id='bootstrap4-css' href='/app/themes/mediumish/assets/css/bootstrap.min.css' media='all'><link crossorigin="anonymous" integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN" rel='stylesheet' id='fontawesome-css' href='https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css' media='all'><link rel='stylesheet' id='mediumish-style-css' href='/app/themes/mediumish-child-theme/style.css?ver=7.0-1.4.4' media='all'><link rel='stylesheet' id='customizer-css-css' href='/app/themes/mediumish-child-theme/inc/customizer.css?ver=0.0.1' media='all'><style id="customizer-css-inline-css">@font-face{font-family:merriweather;font-style:normal;font-weight:400;src:url(/app/themes/mediumish-child-theme/assets/fonts/merriweather-latin-400-normal.woff2)}@font-face{font-family:merriweather;font-style:normal;font-weight:700;src:url(/app/themes/mediumish-child-theme/assets/fonts/merriweather-latin-700-normal.woff2)}@font-face{font-family:montserrat;font-style:normal;font-weight:400;src:url(/app/themes/mediumish-child-theme/assets/fonts/montserrat-latin-400-normal.woff2)}@font-face{font-family:pt sans;font-style:normal;font-weight:700;src:url(/app/themes/mediumish-child-theme/assets/fonts/pt-sans-latin-700-normal.woff2)}body,.carousel-excerpt .fontlight{font-family:PT Sans,serif;font-size:15px;line-height:1.5;color:#666;font-weight:400;font-style:normal}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:PT Sans,serif;color:#111}.carousel-excerpt .title{font-family:PT Sans,serif}.carousel-excerpt .fontlight{}.mediumnavigation .navbar-brand{font-family:Merriweather,serif}.navbar-toggleable-md .navbar-collapse{font-family:Montserrat,serif;font-weight:400;font-style:normal}.article-post{font-family:Merriweather,serif;line-height:1.8;color:#222;font-weight:400;font-style:normal}.btn-simple{background-color:#099cff;border-color:#099cff}.prevnextlinks a,.article-post a,.post .btn.follow,.post .post-top-meta .author-description a,article.page a,.alertbar a{color:#099cff}.post .btn.follow,.alertbar input[type=submit]{border-color:#099cff}blockquote{border-color:#099cff}.entry-content input[type=submit],.alertbar input[type=submit]{background-color:#099cff;border-color:#099cff}p.sharecolour{color:}.shareitnow ul li a svg,.shareitnow a{fill:}.shareitnow li a{color:;border-color:}#comments a{color:#099cff}.comment-form input.submit{background-color:#099cff;border-color:#099cff}footer.footer a{color:#099cff}.mediumnavigation,.dropdown-menu,.dropdown-item{background-color:}@media(max-width:767px){.navbar-collapse{background-color:}}.mediumnavigation,.mediumnavigation a,.navbar-light .navbar-nav .nav-link{color:}.navbar-light .navbar-brand{color:}.navbar-light .navbar-brand:hover{color:#099cff}.customarea .btn.follow{border-color:#099cff;color:#099cff}.search-form .search-submit{background-color:#099cff;border-color:}.search-form .search-submit .fa{color:}.search-form .search-field,.search-form .search-field::placeholder{color:}</style><link rel='stylesheet' id='style-style-css' href='/app/themes/mediumish-child-theme/output-css/style.css?ver=1782135776' media='all'><script id="jquery-core-js" src="/wp/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script><script id="tabbed-blocks-js" src="/app/themes/mediumish-child-theme/assets/js/tabbed-block.js?ver=1.2.0"></script><link rel="https://api.w.org/" href="https://blog.idrsolutions.com/wp-json/"><link rel="alternate" title="JSON" type="application/json" href="https://blog.idrsolutions.com/wp-json/wp/v2/categories/8"><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://blog.idrsolutions.com/wp/xmlrpc.php?rsd"><meta name="generator" content="WordPress 7.0"><link type="text/css" rel="stylesheet" href="/app/plugins/category-specific-rss-feed-menu/wp_cat_rss_style.css"><meta property="og:type" content="website"><meta property="og:title" content="Java"><meta property="og:url" content="https://blog.idrsolutions.com/category/jav/"><meta property="og:description" content="Java is a general-purpose, concurrent, class-based, object-oriented computer programming language that is specifically designed to have as few implementation dependencies as possible.
Developers …"><meta property="og:site_name" content="Java PDF Blog"><meta property="og:image" content="https://blog.idrsolutions.com/app/uploads/2018/12/idr-logo.jpg"><meta property="og:image:width" content="400"><meta property="og:image:height" content="400"><meta property="og:image:alt" content="idr"><meta property="og:locale" content="en_US"><meta name="twitter:site" content="@JavaPDF"><link rel="icon" href="/app/uploads/2018/12/idr-logo-150x150.jpg" sizes="32x32"><link rel="icon" href="/app/uploads/2018/12/idr-logo-300x300.jpg" sizes="192x192"><link rel="apple-touch-icon" href="/app/uploads/2018/12/idr-logo-300x300.jpg"><meta name="msapplication-TileImage" content="https://blog.idrsolutions.com/app/uploads/2018/12/idr-logo-300x300.jpg"><style id="wp-custom-css">.entry-categories-inner{display:none}html{scroll-padding-top:8rem}div.share{display:none}.ad-sect{background-color:#fafafa;padding:12px;border:1px solid #d3d3d3}.ad-sect:empty{display:none}</style></head><body class="home blog wp-theme-mediumish wp-child-theme-mediumish-child-theme"><style></style><header class="site-header sticky-top" role="banner"> <nav class="navbar navbar-expand-lg navbar-light bg-white py-2"> <div class="container"> <a class="navbar-brand py-0 mw-75" rel="author" href="/" data-ec="Top page links" data-ea="Logo button link click"><img src='/app/uploads/2018/06/IDRsmall.png' alt='Java PDF Blog'></a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <div class="navbar-nav ml-auto"> <div class="nav-item"> <div class="nav-link"> <form role="search" method="get" class="search-form" action="/"> <input type="search" class="search-field" placeholder="Search..." name="s" title="Search for:"> <button type="submit" class="search-submit"> <i class="fa fa-search"></i> </button></form> </div> </div> </div> </div> </div> </nav> <nav class="navbar bg-white pt-2"> <div style="flex-direction:row" class="container navbar-nav"> <div class="nav-item"> <a class="nav-link" href="/understanding-the-pdf-file-format/" data-ec="Top page links" data-ea="Learn More About PDF Files" data-el="Learn More About PDF Files">Learn More About PDF Files</a> </div> <div class="nav-item"> <a class="nav-link" href="/working-with-pdf-files-in-java/" data-ec="Top page links" data-ea="Working with PDFs in Java" data-el="Working with PDFs in Java">Working with PDFs in Java</a> </div> <div class="nav-item"> <a class="nav-link" href="/working-with-images-in-java/" data-ec="Top page links" data-ea="Working with Images in Java" data-el="Working with Images in Java">Working with Images in Java</a> </div> <div class="nav-item"> <a class="nav-link" href="https://www.idrsolutions.com/about-us" target="_blank" data-ec="Top page links" data-ea="About Us" data-el="About Us">About Us</a> </div> </div> </nav></header>
<div class="site-content">
<div class="container">
<h1 class="text-center" style="font-family:Helvetica,sans-serif">Welcome to the IDRsolutions Blog!</h1><div class="row"> <div class="col-12 col-lg-8 d-flex flex-column mt-3"> <h2 style="font-family:Helvetica,sans-serif">Meet the Team</h2> <img width="1024" height="576" src="/app/uploads/2025/09/idr-team-1024x576.png" class="my-1 mb-3" alt="The IDR Team" decoding="async" fetchpriority="high" srcset="/app/uploads/2025/09/idr-team-1024x576.png 1024w, /app/uploads/2025/09/idr-team-300x169.png 300w, /app/uploads/2025/09/idr-team-768x432.png 768w, /app/uploads/2025/09/idr-team-1536x864.png 1536w, /app/uploads/2025/09/idr-team.png 1920w" sizes="(max-width: 1024px) 100vw, 1024px"> <p> We’re a team of developers and tech enthusiasts solving tricky document problems, so you don’t have to. IDRsolutions was born from our struggles with integrating PDFs and images into applications. We built tools to simplify the process, and now companies worldwide rely on them to streamline their workflows. Here, we share what we’ve learned along the way to help you spend less time wrestling with documents and more time building great applications. </p> <h2 style="font-family:Helvetica,sans-serif">Recent Posts</h2>
<div class="d-flex flex-column listrecent listrelated">
<div class="grid-item" id="post-">
<div class="card post flex-row"> <a class="thumbimage w-50 align-items-center" href="/edit-pdf-in-java/"><img width='300' height='165' src='/app/uploads/2018/06/jpedal-300x165.png' class='card-img' alt='JPedal Java PDF library logo' decoding='async' srcset='/app/uploads/2018/06/jpedal-300x165.png 300w, /app/uploads/2018/06/jpedal.png 759w' sizes='(max-width: 300px) 100vw, 300px'></a><div class="card-block">
<h2 class="card-title"><a href="/edit-pdf-in-java/">How to Edit a PDF in Java using JPedal (Tutorial)</a></h2> <span class="card-text d-block">Java has no built-in PDF support, so editing a PDF means picking a library. This tutorial covers PDF editing in Java with JPedal&rsquo;s PdfManipulator, from page operations to redaction&mldr;</span>
<div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/jacob-collins/"><img alt src='/app/uploads/2025/02/avatar-58.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' loading='lazy' decoding='async'></a> </span> <span class="author-meta"> <span class="post-name"><a href="/author/jacob-collins/">Jacob Collins</a></span><br> <span class="post-date">Last Modified: Aug 25, 2026</span> <span class="dot"></span> <span class="readingtime">11 min read</span> </span> <span class="post-read-more"> <a href="/edit-pdf-in-java/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span>
</div>
</div>
</div>
</div>
<div class="grid-item" id="post-40107">
<div class="card post flex-row"> <a class="thumbimage w-50 align-items-center" href="/pdf-a-explained"><img width="300" height="179" src="/app/uploads/2020/10/pdf-1-300x179.png" class="card-img" alt="(PDF logo)" decoding="async" srcset="/app/uploads/2020/10/pdf-1-300x179.png 300w, /app/uploads/2020/10/pdf-1-1024x610.png 1024w, /app/uploads/2020/10/pdf-1-768x458.png 768w, /app/uploads/2020/10/pdf-1-e1754314629617.png 500w" sizes="(max-width: 300px) 100vw, 300px"></a><div class="card-block"> <h2 class="card-title"><a href="/pdf-a-explained">What is PDF/A?</a></h2> <span class="card-text d-block">The PDF file format is a very big and complex standard so several more limited subsets have been created for specific purposes, of which...</span> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/markee/"><img alt src='/app/uploads/2025/02/avatar-2.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'></a> </span> <span class="author-meta"> <span class="post-name"><a href="/author/markee/">Mark Stephens</a></span><br> <span class="post-date">Last Modified: Aug 5, 2026</span> <span class="dot"></span> <span class="readingtime">3 min read</span> </span> <span class="post-read-more"> <a href="/pdf-a-explained" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div>
</div>
<div class="grid-item" id="post-40009">
<div class="card post flex-row"> <a class="thumbimage w-50 align-items-center" href="/apache-commons-imaging-alternative-for-java-jdeli/"><img width="300" height="195" src="/app/uploads/2018/05/jdeli-logo-300x195.png" class="card-img" alt decoding="async" srcset="/app/uploads/2018/05/jdeli-logo-300x195.png 300w, /app/uploads/2018/05/jdeli-logo.png 400w" sizes="(max-width: 300px) 100vw, 300px"></a><div class="card-block"> <h2 class="card-title"><a href="/apache-commons-imaging-alternative-for-java-jdeli/">Apache Commons Imaging Alternative for Java: JDeli</a></h2> <span class="card-text d-block">If you&#8217;ve used Apache Commons Imaging, it was probably to pull EXIF out of a JPEG or edit some XMP. That&#8217;s what it&#8217;s good...</span> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/amy/"><img alt src='/app/uploads/2025/02/avatar-53.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'></a> </span> <span class="author-meta"> <span class="post-name"><a href="/author/amy/">Amy Pearson</a></span><br> <span class="post-date">Last Modified: Jul 13, 2026</span> <span class="dot"></span> <span class="readingtime">7 min read</span> </span> <span class="post-read-more"> <a href="/apache-commons-imaging-alternative-for-java-jdeli/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div>
</div>
<div class="grid-item" id="post-39751">
<div class="card post flex-row"> <a class="thumbimage w-50 align-items-center" href="/twelvemonkeys-alternative-for-java-image-processing/"><img width="300" height="154" src="/app/uploads/2019/10/JDeli1-1-300x154.png" class="card-img" alt="JDeli" decoding="async" srcset="/app/uploads/2019/10/JDeli1-1-300x154.png 300w, /app/uploads/2019/10/JDeli1-1-768x395.png 768w, /app/uploads/2019/10/JDeli1-1.png 926w" sizes="(max-width: 300px) 100vw, 300px"></a><div class="card-block"> <h2 class="card-title"><a href="/twelvemonkeys-alternative-for-java-image-processing/">TwelveMonkeys Alternative for Java Image Processing</a></h2> <span class="card-text d-block">Most Java developers find TwelveMonkeys the same way: ImageIO won&#8217;t read some format, a quick search turns it up, a few JARs go on...</span> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/amy/"><img alt src='/app/uploads/2025/02/avatar-53.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'></a> </span> <span class="author-meta"> <span class="post-name"><a href="/author/amy/">Amy Pearson</a></span><br> <span class="post-date">Last Modified: Jul 3, 2026</span> <span class="dot"></span> <span class="readingtime">6 min read</span> </span> <span class="post-read-more"> <a href="/twelvemonkeys-alternative-for-java-image-processing/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div>
</div>
<div class="grid-item" id="post-39637">
<div class="card post flex-row"> <a class="thumbimage w-50 align-items-center" href="/the-best-pdf-inspector-tools-for-developers/"><img width="300" height="270" src="/app/uploads/2025/09/Screenshot-2025-09-22-at-13.08.42-300x270.png" class="card-img" alt="PDF Inspector" decoding="async" srcset="/app/uploads/2025/09/Screenshot-2025-09-22-at-13.08.42-300x270.png 300w, /app/uploads/2025/09/Screenshot-2025-09-22-at-13.08.42-768x692.png 768w, /app/uploads/2025/09/Screenshot-2025-09-22-at-13.08.42.png 969w" sizes="(max-width: 300px) 100vw, 300px"></a><div class="card-block"> <h2 class="card-title"><a href="/the-best-pdf-inspector-tools-for-developers/">The Best PDF Inspector Tools for Developers</a></h2> <span class="card-text d-block">If you have ever opened a PDF in a hex editor at 2am trying to work out why a font is missing or why...</span> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/jacob-collins/"><img alt src='/app/uploads/2025/02/avatar-58.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'></a> </span> <span class="author-meta"> <span class="post-name"><a href="/author/jacob-collins/">Jacob Collins</a></span><br> <span class="post-date">Last Modified: Jun 19, 2026</span> <span class="dot"></span> <span class="readingtime">6 min read</span> </span> <span class="post-read-more"> <a href="/the-best-pdf-inspector-tools-for-developers/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div>
</div>
</div>
</div>
<div class="col-12 col-lg-4 d-flex flex-column listrecent listrelated"> <h3 class="my-3">Featured Posts:</h3> <div class="card post highlighted"><a class="thumbimage" href="/25-years-of-heretical-thinking-our-playbook/" style="background-image:url(/app/uploads/2026/02/idr-logo.png)"></a><div class="card-block"> <h2 class="card-title"><a href="/25-years-of-heretical-thinking-our-playbook/">25 years of Heretical Thinking: Our Playbook</a></h2> <span class="card-text d-block">Watch our BoS 2025 Talk: 25 Years of Heretical Thinking Consistency After 25 years in business, IDR Solutions has grown by doing things differently....</span> <div class="metafooter"> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/chika/"> <img alt src='/app/uploads/2025/09/Chika.png' srcset='/app/uploads/2025/09/Chika.png 258w, /app/uploads/2025/09/Chika-150x150.png 150w' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'> </span> </a> <span class="author-meta"> <span class="post-name"><a href="/author/chika/">chika</a></span><br> <span class="post-date">Modified: Feb 11, 2026</span> <span class="dot"></span> <span class="readingtime">3 min read</span> </span> <span class="post-read-more"> <a href="/25-years-of-heretical-thinking-our-playbook/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div> </div> <div class="card post highlighted"><a class="thumbimage" href="/travelling-to-istanbul-by-train-for-devfest-conference-part-6-completing-the-orient-express/" style="background-image:url(/app/uploads/2025/12/IMG_9379-1024x768.jpeg)"></a><div class="card-block"> <h2 class="card-title"><a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-6-completing-the-orient-express/">Travelling to Istanbul by train for DevFest conference –&mldr;</a></h2> <span class="card-text d-block">After yesterday&#8217;s Bulgarian marathon, today is a much gentler last stage. The overnight sleep was the most comfortable yet with a spacious 4 bed...</span> <div class="metafooter"> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/markee/"> <img alt src='/app/uploads/2025/02/avatar-2.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'> </span> </a> <span class="author-meta"> <span class="post-name"><a href="/author/markee/">Mark Stephens</a></span><br> <span class="post-date">Modified: May 26, 2026</span> <span class="dot"></span> <span class="readingtime">1 min read</span> </span> <span class="post-read-more"> <a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-6-completing-the-orient-express/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div> </div> <div class="card post highlighted"><a class="thumbimage" href="/travelling-to-istanbul-by-train-for-devfest-conference-part-5-crossing-bulgaria/" style="background-image:url(/app/uploads/2025/12/IMG_9356-768x1024.jpeg)"></a><div class="card-block"> <h2 class="card-title"><a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-5-crossing-bulgaria/">Travelling to Istanbul by train for DevFest conference –&mldr;</a></h2> <span class="card-text d-block">After the (now unusual) experience of a night in one place, we were in Ted&#8217;s Coffee for 9.30am to collect our tickets for tonight&#8217;s...</span> <div class="metafooter"> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/markee/"> <img alt src='/app/uploads/2025/02/avatar-2.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'> </span> </a> <span class="author-meta"> <span class="post-name"><a href="/author/markee/">Mark Stephens</a></span><br> <span class="post-date">Modified: Dec 4, 2025</span> <span class="dot"></span> <span class="readingtime">1 min read</span> </span> <span class="post-read-more"> <a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-5-crossing-bulgaria/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div> </div> <div class="card post highlighted"><a class="thumbimage" href="/travelling-to-istanbul-by-train-for-devfest-conference-part-4-bucharest/" style="background-image:url(/app/uploads/2025/12/IMG_9213-1024x768.jpeg)"></a><div class="card-block"> <h2 class="card-title"><a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-4-bucharest/">Travelling to Istanbul by train for DevFest conference –&mldr;</a></h2> <span class="card-text d-block">After enjoying our free drink in the Premium lounge at Budapest, we boarded the 7.05pm overnight train to Bucharest. Through Transylvania and the Carpathians...</span> <div class="metafooter"> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/markee/"> <img alt src='/app/uploads/2025/02/avatar-2.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'> </span> </a> <span class="author-meta"> <span class="post-name"><a href="/author/markee/">Mark Stephens</a></span><br> <span class="post-date">Modified: Dec 4, 2025</span> <span class="dot"></span> <span class="readingtime">1 min read</span> </span> <span class="post-read-more"> <a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-4-bucharest/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div> </div> <div class="card post highlighted"><a class="thumbimage" href="/travelling-to-istanbul-by-train-for-devfest-conference-part-3-onwards-to-budapest/" style="background-image:url(/app/uploads/2025/11/IMG_9147-1024x768.jpeg)"></a><div class="card-block"> <h2 class="card-title"><a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-3-onwards-to-budapest/">Travelling to Istanbul by train for DevFest conference –&mldr;</a></h2> <span class="card-text d-block">Another day another night train. After a full day in Prague, it&#8217;s time for another night train&#8230;. Journey to Budapest Tonight it&#8217;s a six...</span> <div class="metafooter"> <div class="wrapfooter"> <span class="meta-footer-thumb"> <a href="/author/markee/"> <img alt src='/app/uploads/2025/02/avatar-2.jpg' class='avatar avatar-40 photo author-thumb' height='40' width='40' decoding='async'> </span> </a> <span class="author-meta"> <span class="post-name"><a href="/author/markee/">Mark Stephens</a></span><br> <span class="post-date">Modified: Dec 4, 2025</span> <span class="dot"></span> <span class="readingtime">1 min read</span> </span> <span class="post-read-more"> <a href="/travelling-to-istanbul-by-train-for-devfest-conference-part-3-onwards-to-budapest/" title="Read Story"> <svg class="svgIcon-use" width="25" height="25" viewBox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1.0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5.0 00.706.03L12.5 16.85l5.662 4.126a.508.508.0 00.708-.03.5.5.0 00.118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55.0 1 .45 1 1v13.637l-5.162-3.668a.49.49.0 00-.676.0z" fill-rule="evenodd"/></svg> </a> </span> </div> </div> </div> </div> </div>
</div>
<div class="clearfix"></div>
</div>
</div>
<div class="container"> <footer class="footer"> <p class="pull-left"> </p> <p class="pull-right"> © IDRsolutions Ltd 2025. All rights reserved. </p> <div class="clearfix"></div> <a href class="back-to-top hidden-md-down"> <i class="fa fa-angle-up"></i> </a> </footer> </div> <script type="speculationrules">{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp/wp-*.php","/wp/wp-admin/*","/app/uploads/*","/app/*","/app/plugins/*","/app/themes/mediumish-child-theme/*","/app/themes/mediumish/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}</script><script crossorigin="anonymous" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" id="tether-js" src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script><script id="bootstrap4-js" src="/app/themes/mediumish/assets/js/bootstrap.min.js"></script><script id="mediumish-ieviewportbugworkaround-js" src="/app/themes/mediumish/assets/js/ie10-viewport-bug-workaround.js"></script><script id="mediumish-js" src="/app/themes/mediumish/assets/js/mediumish.js"></script> </body>
</html>