Login  Register

Re: Diagrams referenced by URL in PDF?

Posted by wolandscat on Apr 21, 2016; 4:37pm
URL: https://discuss.asciidoctor.org/Diagrams-referenced-by-URL-in-PDF-tp4623p4630.html

So far I can't get this to work. I have the following command line (in a script):

run_asciidoctor_pdf () {
	out_file=${1}.pdf

	# work out the options
	opts="-a current_year=$year \
		-a stylesdir=$stylesdir \
		-a resources_dir=$resources_dir \
		-a uml_export_dir=$uml_export_dir \
		-a pdf-style=$pdf_theme \
		-a pdf-stylesdir=$resources_dir \
		-a allow-uri-read -a cache-uri \
		-r asciidoctor-pdf -b pdf \
		--out-file=$out_file"

	# -a pdf-fontsdir=path/to/fonts 
	if [ "$pdf_trace" = true ]; then
		opts="${opts} --trace"
	fi

	asciidoctor ${opts} $2
	echo generated $(pwd)/$out_file
}

I just added the line '-a allow-uri-read -a cache-uri' to the previous version.

I installed open-uri-cached as above.

When I run my script, something happens, because I see this in /tmp (actually in cygwin's /tmp area):

/tmp
    /open-uri-1001
        /www.openehr.org   # this is indeed the site from which the image comes
            8a4608a543e26f1107b8842d250d74f7f86607db
            8a4608a543e26f1107b8842d250d74f7f86607db.meta

But there is no .png or .svg in /tmp. The source link is to a .svg.

The output from running asciidoctor, with trace turned on is:

/usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/temporary_path.rb:5:in `unlink': No such file or directory @ unlink_internal - /tmp/image-20160421-226964-199iqrn.png (Errno::ENOENT)
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/temporary_path.rb:5:in `unlink'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:2216:in `unlink_tmp_file'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:859:in `convert_image'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:88:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:71:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:80:in `block in content'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:80:in `map'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:80:in `content'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:104:in `convert_content_for_block'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:305:in `convert_section'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:88:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:71:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:80:in `block in content'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:80:in `map'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/abstract_block.rb:80:in `content'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/document.rb:1104:in `content'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:104:in `convert_content_for_block'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:149:in `convert_document'
        from /usr/local/gems/asciidoctor-pdf-1.5.0.alpha.8/lib/asciidoctor-pdf/converter.rb:88:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/document.rb:1044:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor.rb:1503:in `convert'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/cli/invoker.rb:94:in `block in invoke!'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/cli/invoker.rb:86:in `each'
        from /usr/local/gems/asciidoctor-1.5.4/lib/asciidoctor/cli/invoker.rb:86:in `invoke!'
        from /usr/local/gems/asciidoctor-1.5.4/bin/asciidoctor:14:in `<top (required)>'
        from /home/Thomas/bin/asciidoctor:23:in `load'
        from /home/Thomas/bin/asciidoctor:23:in `<main>'

any ideas?

- thomas