CI build | Coverage | CPAN |
---|---|---|
Curie v0.001 displaying an excerpt from "Ways of coloring: Comparative color vision as a case study for cognitive science"
:mag_right::book: Document reader (currently in pre-alpha)
Home Page: https://p3rl.org/Renard::Curie
Need to automatically test whitespace and coding style
Should be able to create an image surface from the PNG data without using any intermediate files.
We need to test the ::App
by first pushing a PDF file (use the one in test-data
) onto @ARGV
and then calling $app->process_arguments
.
We need to figure out an alternative solution
Move the text to a tooltip. This will take up less room on the screen.
tab-pos and tab-reorderable are unavailable properties for libgdl 3.8.1 on ubuntu 14.04 LTS
Connects to #109.
Perhaps looking at this would be useful: http://tesla.duckdns.org/gtk3-perl-windows/ and https://blogs.gnome.org/nacho/2014/08/01/how-to-build-your-gtk-application-on-windows/.
@ChiragGhanshani, could you add a new text area widget to the simple-gui
branch (PR #6) that is between the back and forward buttons which
Something like the following interface from xpdf:
Create a new branch off the simple-gui
branch and open a pull request for your change.
If you get stuck, please ask.
Look at Travis-CI docs, X11::GUITest, and the tests in the Gtk3 package
mutool
can be used to get the same information
For taking notes, I believe OpenDocument is the most appropriate format to start with.
We may need to add our own tags to add annotation linking information.
From PR #37.
on_draw_pdf_page
to on_draw_page
Goal: full-screen, but keyboard shortcuts continue working.
With transitions between slides (carousel, coverflow, etc.)
This makes their purpose clear and separates them from regular functions of the view.
so next_button_clicked
becomes on_next_button_clicked_cb
.
We need to figure out how to make the components extend Gtk3::Widget
. There is a module on CPAN that does this very well: Gtk3::SimpleList
.
This should be fairly straightforward. The Debian packages are in a file in this repository.
Meeting log: https://project-renard.github.io/doc/development/meeting-log/posts/2016/01/24/initial-setup/
When opening a document, it should show how many pages are in the document next to the page entry field.
See:
pdfinfo
:
$ pdfinfo test-data/PDF/Adobe/pdf_reference_1-7.pdf
Title: PDF Reference, version 1.7
Subject: Adobe Portable Document Format (PDF)
Author: Adobe Systems Incorporated
Creator: FrameMaker 7.2
Producer: Acrobat Distiller 7.0.5 (Windows)
CreationDate: Tue Oct 17 03:10:20 2006 CDT
ModDate: Sat Nov 18 17:40:43 2006 CST
Tagged: yes
UserProperties: no
Suspects: no
Form: AcroForm
JavaScript: no
Pages: 1310
Encrypted: no
Page size: 531 x 666 pts
Page rot: 0
File size: 32472771 bytes
Optimized: yes
PDF version: 1.6
mutool
mutool show pdf_reference_1-7.pdf $(mutool show pdf_reference_1-7.pdf grep | grep 'Author(' | cut -d: -f2 | tail -1)
109959 0 obj
<<
/CreationDate (D:20061017081020Z)
/Subject (Adobe Portable Document Format \(PDF\))
/Author (Adobe Systems Incorporated)
/Creator (FrameMaker 7.2)
/Producer (Acrobat Distiller 7.0.5 \(Windows\))
/ModDate (D:20061118211043-02'30')
/Title (PDF Reference, version 1.7)
>>
endobj
Note that \( ->(
and \251 -> ©
(which is ordinal 251 in octal). More info about escaping objects is on page 54 of the PDF reference:
Should show when clicking the File > Open
menu item
See #41 (comment).
This will allow for using the add
method on Gtk::ScrolledWindow
on older versions of Gtk+.
Use POD coverage tests to check that each class, method, and attribute has documentation.
I was thinking of creating a dictionary with all the important text so that when the language is selected the message in the correct language appears to the end user while the actual coding remains the same. The pool of messages probably should have a small degree of separation/clustering but not too much such as most terms can be used on multiple ages/occasions
From Zaki: in FOSS projects [https://github.com/GNOME/evince/tree/master/po], this is usually done using the gettext library and .po files.
The built-in icons are not very modern and the buttons are a little large.
We need menus because buttons will clutter the UI.
Set the title of the application window to the currently open PDF filename.
Create a new branch off the simple-gui
branch (PR #6) and open a pull request for your change.
Connects with #55.
Also create predicates to determine if already there.
@StayerX, could you edit the run.pl
code in simple-gui
branch (PR #6) the to have the drawing area in a scrollable region? This will allow for moving the page around if it is larger than the window size.
Create a new branch off the simple-gui
branch and open a pull request for your change.
It should scroll both horizontally and vertically and the scrollbars should appear automatically when needed.
If you get stuck, please ask. #simple-gui-scrollable
gir1.2-clutter-1.0
)
gir1.2-gtkclutter-1.0
)
These need to be associated with the particular document.
The PDF data model and rendering code can be independent of the GUI code.
Both the PDF and CairoImageSurface have shared code. Use a role to simplify that.
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.