oxplot / pdfrankenstein Goto Github PK
View Code? Open in Web Editor NEWPDF Annotator of Nightmares ๐
License: BSD 3-Clause "New" or "Revised" License
PDF Annotator of Nightmares ๐
License: BSD 3-Clause "New" or "Revised" License
Hello @oxplot !
while I was searching for a tool to properly write into pdf files with my stylus, I found your project and wanted to try it out. Unfortunately, the build is failing when I'm trying to install it via yay (I'm on ArchLinux). So I decided to build it via the source as you noted in the README.md, but I get the same error, which looks like this:
Please fix this error! I will try to research it also - if I find it, I will make a pull request, but I have to note, that I have not worked with Go yet, so I would appreciate if you would also look into this error.
Also, maybe set the "-parallel" flag in the PKGBUILD file, friendly reminder from a slow laptop user (if possible only of course)
Have a nice day :D
Fabian
Hello
tested version: 0.9.12
I would like to use pdfrankenstein to annotate pdf with 400 pages
unfortunately thumbnails are to small to identify if the page is the correct one or not
Having a "preview" pane would be terrific
user experience could be:
having a thumbnail pane and a preview pane
when a thumbnail is selected, the page is shown enlarged in the previous pane
when navigating with keyboard arrows through the thumbnails in the thumbnail pane, the preview in the preview pane is updated accordingly
this would permit to rapidly navigate through pages and target the right ones without having to open all of them one by one opening/closing inkscape until finding the right ones.
Hi,
I am trying to port your package to NixOS but currently facing some issues at build time :
internal/unsafeheader
runtime/internal/sys
github.com/gotk3/gotk3/internal/slab
unicode
math/bits
unicode/utf8
internal/race
encoding
runtime/internal/atomic
sync/atomic
internal/cpu
runtime/cgo
runtime/internal/math
internal/bytealg
math
runtime
internal/reflectlite
sync
internal/testlog
github.com/gotk3/gotk3/internal/callback
errors
sort
internal/oserror
path
io
strconv
syscall
bytes
strings
reflect
bufio
regexp/syntax
internal/syscall/execenv
internal/syscall/unix
time
regexp
context
io/fs
internal/poll
embed
os
internal/fmtsort
path/filepath
fmt
io/ioutil
os/exec
github.com/gotk3/gotk3/internal/closure
log
net/url
text/template/parse
encoding/xml
github.com/gotk3/gotk3/glib
text/template
github.com/oxplot/pdfrankenstein/session
# github.com/oxplot/pdfrankenstein/session
session/session.go:21:61: undefined: any
note: module requires Go 1.18
# github.com/gotk3/gotk3/glib
cgo-gcc-prolog: In function '_cgo_26ff448d08b0_Cfunc_g_binding_get_source':
cgo-gcc-prolog:71:2: warning: 'g_binding_get_source' is deprecated: Use 'g_binding_dup_source' instead [-Wdeprecated-declarations]
In file included from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/glib-object.h:22,
from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gio/gioenums.h:28,
from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gio/giotypes.h:28,
from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gio/gio.h:26,
from vendor/github.com/gotk3/gotk3/glib/gbinding.go:3:
/nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gobject/gbinding.h:113:23: note: declared here
113 | GObject * g_binding_get_source (GBinding *binding);
| ^~~~~~~~~~~~~~~~~~~~
cgo-gcc-prolog: In function '_cgo_26ff448d08b0_Cfunc_g_binding_get_target':
cgo-gcc-prolog:107:2: warning: 'g_binding_get_target' is deprecated: Use 'g_binding_dup_target' instead [-Wdeprecated-declarations]
In file included from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/glib-object.h:22,
from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gio/gioenums.h:28,
from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gio/giotypes.h:28,
from /nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gio/gio.h:26,
from vendor/github.com/gotk3/gotk3/glib/gbinding.go:3:
/nix/store/9hvamg7jyhmcww590z2g0gy1f8rkil6m-glib-2.70.1-dev/include/glib-2.0/gobject/gbinding.h:117:23: note: declared here
117 | GObject * g_binding_get_target (GBinding *binding);
| ^~~~~~~~~~~~~~~~~~~~
github.com/gotk3/gotk3/cairo
github.com/gotk3/gotk3/pango
github.com/gotk3/gotk3/gdk
github.com/gotk3/gotk3/gtk
Please note that i'm not very experienced with Go and so this might be a stupid mistake from my side.
Installed dependencies : gtk3 glib gdk-pixbuf inkscape poppler_utils qpdf
Just cloned, build and installed the latest version (v0.9.11). I can open PDF files, but when I click on a page, I receive the following:
"Cannot annotate file: failed to convert page 3 of '/tmp/pdfrankenstein-1174498170/src.pdf' to svg: Unknown option --pages=4
Context:
Ubuntu 23.04
Inkscape 1.2.2 (b0a8486541, 2022-12-01)
poppler-utils/lunar-updates,lunar-security,now 22.12.0-2ubuntu1.1 amd64 [installed]
qpdf version 11.3.0
I suspect the problem is missing dependencies, but at the moment I'm not able to dig into that
Hi,
After saving the file and closing inkspace, i'm getting the crash log :
Jun 08 01:09:08 hspecter xsession[295672]: [xcb] Unknown sequence number while awaiting reply
Jun 08 01:09:08 hspecter xsession[295672]: [xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
Jun 08 01:09:08 hspecter xsession[295672]: [xcb] Aborting, sorry about that.
Jun 08 01:09:08 hspecter xsession[295672]: pdfrankenstein: xcb_io.c:365: poll_for_response: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Jun 08 01:09:08 hspecter xsession[295672]: SIGABRT: abort
Jun 08 01:09:08 hspecter xsession[295672]: PC=0x7f73b3689c1f m=0 sigcode=18446744073709551610
Jun 08 01:09:08 hspecter xsession[295672]: signal arrived during cgo execution
Jun 08 01:09:08 hspecter xsession[295672]: goroutine 1 [syscall]:
Jun 08 01:09:08 hspecter xsession[295672]: runtime.cgocall(0x8680a0, 0xc0000d3ef0)
Jun 08 01:09:08 hspecter xsession[295672]: runtime/cgocall.go:157 +0x5c fp=0xc0000d3ec8 sp=0xc0000d3e90 pc=0x490c5c
Jun 08 01:09:08 hspecter xsession[295672]: github.com/gotk3/gotk3/gtk._Cfunc_gtk_main()
Jun 08 01:09:08 hspecter xsession[295672]: _cgo_gotypes.go:17424 +0x45 fp=0xc0000d3ef0 sp=0xc0000d3ec8 pc=0x60ff85
Jun 08 01:09:08 hspecter xsession[295672]: github.com/gotk3/gotk3/gtk.Main(...)
Jun 08 01:09:08 hspecter xsession[295672]: github.com/gotk3/[email protected]/gtk/gtk.go:1241
Jun 08 01:09:08 hspecter xsession[295672]: main.run()
Jun 08 01:09:08 hspecter xsession[295672]: github.com/oxplot/pdfrankenstein/main.go:561 +0x8c fp=0xc0000d3f38 sp=0xc0000d3ef0 pc=0x85878c
Jun 08 01:09:08 hspecter xsession[295672]: main.main()
Jun 08 01:09:08 hspecter xsession[295672]: github.com/oxplot/pdfrankenstein/main.go:568 +0x70 fp=0xc0000d3f80 sp=0xc0000d3f38 pc=0x858830
Jun 08 01:09:08 hspecter xsession[295672]: runtime.main()
Jun 08 01:09:08 hspecter xsession[295672]: runtime/proc.go:250 +0x212 fp=0xc0000d3fe0 sp=0xc0000d3f80 pc=0x4c30d2
Jun 08 01:09:08 hspecter xsession[295672]: runtime.goexit()
Jun 08 01:09:08 hspecter xsession[295672]: runtime/asm_amd64.s:1571 +0x1 fp=0xc0000d3fe8 sp=0xc0000d3fe0 pc=0x4ef081
Jun 08 01:09:08 hspecter xsession[295672]: rax 0x0
Jun 08 01:09:08 hspecter xsession[295672]: rbx 0x482f8
Jun 08 01:09:08 hspecter xsession[295672]: rcx 0x7f73b3689c1f
Jun 08 01:09:08 hspecter xsession[295672]: rdx 0x6
Jun 08 01:09:08 hspecter xsession[295672]: rdi 0x482f8
Jun 08 01:09:08 hspecter xsession[295672]: rsi 0x482f8
Jun 08 01:09:08 hspecter xsession[295672]: rbp 0x7f73b37b3268
Jun 08 01:09:08 hspecter xsession[295672]: rsp 0x7fff2b390480
Jun 08 01:09:08 hspecter xsession[295672]: r8 0x7
Jun 08 01:09:08 hspecter xsession[295672]: r9 0x26018c0
Jun 08 01:09:08 hspecter xsession[295672]: r10 0x8
Jun 08 01:09:08 hspecter xsession[295672]: r11 0x246
Jun 08 01:09:08 hspecter xsession[295672]: r12 0x7f73b3362c13
Jun 08 01:09:08 hspecter xsession[295672]: r13 0x16d
Jun 08 01:09:08 hspecter xsession[295672]: r14 0x6
Jun 08 01:09:08 hspecter xsession[295672]: r15 0x7fff2b390798
Jun 08 01:09:08 hspecter xsession[295672]: rip 0x7f73b3689c1f
Jun 08 01:09:08 hspecter xsession[295672]: rflags 0x246
Jun 08 01:09:08 hspecter xsession[295672]: cs 0x33
Jun 08 01:09:08 hspecter xsession[295672]: fs 0x0
Jun 08 01:09:08 hspecter xsession[295672]: gs 0x0
Very nice Project! I think it is somewhat tedious to navigate through the folders inside the app, so I wonder how much effort it is to open a PDF directly when starting the program from shell?
Thanks and keep it up!
Hi,
First of all thanks for the app. I seems to be a great idea to offload the editing by inkscape and have all its power while the app manage the rest though I couldn't achieve this yet.
I did this workflow:
Have I missed something here?
Hi there,
great project! But build fails on Debian 11:
~/pdfrankenstein$ go build
main.go:5:2: package embed is not in GOROOT (/usr/lib/go-1.15/src/embed)
inkscape, poppler-utils and qpdf are installed:
$ inkscape -V
Inkscape 1.0.2 (e86c870879, 2021-01-15)
Pango version: 1.46.2
$ apt search poppler-utils
poppler-utils/stable,now 20.09.0-3.1 amd64 [installiert]
PDF-Werkzeuge (auf Basis von Poppler)
$ qpdf --version
qpdf version 10.1.0
Any hint on this issue?
Thanks!
Hi,
Trying this software, I get the following error in the current branch :
pdfrankenstein: failed to open (filename)
qpdf: unknown option --warning-exit-0
Usage: qpdf [options] infile outfile
For detailed help, run qpdf --help
Will try with the latest release and update here
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.