Coder Social home page Coder Social logo

shixingya / drawpile Goto Github PK

View Code? Open in Web Editor NEW

This project forked from drawpile/drawpile

0.0 1.0 0.0 18.14 MB

A collaborative drawing program

Home Page: http://drawpile.net/

License: GNU General Public License v3.0

CMake 1.14% Shell 0.54% Python 1.34% Dockerfile 0.09% Makefile 0.13% Inno Setup 0.14% C++ 95.32% C 1.07% QMake 0.04% QML 0.19%

drawpile's Introduction

Drawpile - a collaborative drawing program

Drawpile is a drawing program that lets you share the canvas with other users in real time.

Some feature highlights:

  • Runs on Linux, Windows and OSX
  • Shared canvas using the built-in server or a dedicated server
  • Record, play back and export drawing sessions
  • Simple animation support
  • Layers and blending modes
  • Text layers
  • Supports pressure sensitive Wacom tablets
  • Built-in chat
  • Supports OpenRaster file format
  • Encrypted connections using SSL
  • Automatic port forwarding with UPnP

Building with cmake

Common dependencies:

  • Qt 5.9 or newer (QtGui not required for headless server)
  • KF5 Extra CMake Modules
  • KF5 KArchive

Client specific dependencies:

  • QtColorPicker
  • KF5 KDNSSD (optional: local server discovery with Zeroconf)
  • GIFLIB (optional: animated GIF export)
  • MiniUPnP (optional: automatic port forwarding setup)
  • LibVPX (optional: WebM video export)

Server specific dependencies (you can also take a look at Docker build script):

  • libsystemd (optional: systemd socket activation support)
  • libmicrohttpd (optional: HTTP admin API)
  • libsodium (optional: ext-auth support)

It's a good idea to build in a separate directory to keep build files separate from the source tree.

Example:

$ mkdir build
$ cd build
$ cmake ..
$ make

The executables will be generated in the build/bin directory. You can run them from there, or install them with make install.

The configuration step supports some options:

  • CLIENT=off: don't build the client (useful when building the stand-alone server only)
  • SERVER=off: don't build the stand-alone server.
  • SERVERGUI=off: build a headless-only stand-alone serveer.
  • TOOLS=on: build dprec2txt command line tool
  • CMAKE_BUILD_TYPE=debug: enable debugging features
  • INITSYS="": select init system integration (currently only "systemd" is supported.) Set this to an empty string to disable all integration.
  • TESTS=on: build unit tests (run test suite with make test)
  • KIS_TABLET=on: enable improved graphics tablet support (taken from Krita)

Notes about KIS_TABLET:

  • On Windows, it enables Windows Ink and improved Wintab support. A patched version of Qt should be used. See pkg/win for the patch.
  • On Linux (or any platform with an X server,) it enables a modified XInput2 event handler.
  • On macOS it does nothing and shouldn't be used.

Example: $ cmake .. -DCMAKE_BUILD_TYPE=debug -DKIS_TABLET=on

For instructions on how to build Drawpile on Windows and OSX, see the Building from sources page.

drawpile's People

Contributors

callaa avatar tokyogeometry avatar mlichter avatar lionsphil avatar yancharkin avatar knicknic avatar christianfrisson avatar xyproto avatar cicku avatar jalev avatar schoerg avatar probonopd avatar abumq avatar mk-pmb avatar horkana avatar albanobattistella avatar yurchor avatar yurivict avatar metamaniac avatar vn971 avatar vnwildman avatar timo avatar digitalcircuit avatar claremacrae avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.