Compare commits

..

12 Commits

Author SHA1 Message Date
e5fea30624 Fix automated documentation build/publish
All checks were successful
on-push / build-and-test (push) Successful in 27s
publish-docs-nightly / build-and-publish (push) Successful in 15s
2026-01-22 23:50:59 +01:00
24764969cc Use relative location in repositories.manifest
All checks were successful
on-push / build-and-test (push) Successful in 25s
2026-01-21 00:29:45 +01:00
22e44600e4 Fix bug caused by uninitialized member
All checks were successful
on-push / build-and-test (push) Successful in 27s
2025-12-05 14:51:59 +01:00
d77e76fc95 Add logos to some badges 2025-12-01 09:48:17 +01:00
e79bdd5eb6 Add Discord badge and invite link 2025-12-01 08:09:18 +01:00
f58cf461b7 Change feature-request e-mail address 2025-12-01 06:24:12 +01:00
d62c370039 Add yet another badge to README 2025-12-01 06:22:45 +01:00
7f73ddb033 Change http:// to https:// in LICENSE 2025-12-01 05:49:17 +01:00
46a34911f0 Rename RGB to Color_RGB 2025-12-01 05:48:03 +01:00
6cfb014a4d Add docs badge to README 2025-12-01 05:40:34 +01:00
0cbd10cff3 Add dev docs link to README 2025-12-01 05:34:21 +01:00
4dbe3da558 Add nightly workflow to publish dev docs 2025-12-01 05:29:24 +01:00
10 changed files with 87 additions and 44 deletions

View File

@@ -0,0 +1,31 @@
name: publish-docs-nightly
on:
schedule:
- cron: '0 5 * * *'
jobs:
build-and-publish:
if: github.repository == 'art/libart-paperback' && github.ref == 'refs/heads/master'
runs-on: linux
container: code.helloryan.se/art/infra/buildenv/x86_64-fedora_42-unified:latest
steps:
- name: Configure repository access
run: |
git config --global http.$GITHUB_SERVER_URL/.extraheader "Authorization: token ${{ secrets.ACT_RUNNER_TOKEN }}"
- name: Clone source package
run: |
git clone $GITHUB_SERVER_URL/$GITHUB_REPOSITORY.git /source
cd /source
git checkout $GITHUB_SHA
- name: Build documentation
run: |
cd /source
b alias{docs-private}
- name: Configure MinIO CLI
run: |
mc alias set garage https://buckets.helloryan.se/ ${{ secrets.DOCS_BUCKET_ACCESS_KEY }} ${{ secrets.DOCS_BUCKET_SECRET_KEY }}
- name: Publish documentation
run: |
cd /source/docs/html
mc cp -r * garage/docs.helloryan.se/libart-paperback/

View File

@@ -13,7 +13,7 @@ modification, are permitted provided that the following conditions are met:
3. All advertising materials mentioning features or use of this software must 3. All advertising materials mentioning features or use of this software must
display the following acknowledgement: display the following acknowledgement:
This product includes software developed by Ryan, http://helloryan.se/. This product includes software developed by Ryan, https://helloryan.se/.
4. Neither the name(s) of the copyright holder(s) nor the names of its 4. Neither the name(s) of the copyright holder(s) nor the names of its
contributors may be used to endorse or promote products derived from this contributors may be used to endorse or promote products derived from this

View File

@@ -1,10 +1,13 @@
\page readme README \page readme README
[![Build Status][build-badge]](https://code.helloryan.se/art/libart-paperback/actions) [![Build Status][build-badge]](https://code.helloryan.se/art/libart-paperback/actions)
[![Documentation][docs-badge]](https://docs.helloryan.se/libart-paperback/)
[![License][license-badge]](https://code.helloryan.se/art/libart-paperback/src/branch/master/LICENSE) [![License][license-badge]](https://code.helloryan.se/art/libart-paperback/src/branch/master/LICENSE)
[![Sponsor][sponsor-badge]](https://patreon.com/helloryan) [![Sponsor][sponsor-badge]](https://patreon.com/helloryan)
[![Language][language-badge]](https://en.wikipedia.org/wiki/C++) [![Language][language-badge]](https://en.wikipedia.org/wiki/C++)
[![Build System][build2-badge]](https://build2.org/) [![Build System][build2-badge]](https://build2.org/)
[![Made with Love][made-with-love-badge]](https://helloryan.se/)
[![Discord][discord-badge]](https://discord.gg/dCFMwrbNSP)
# libart-paperback # libart-paperback
@@ -12,7 +15,8 @@ libart-paperback is a PDF library for C++.
## Feature Requests ## Feature Requests
Feature requests can be sent to ryan@helloryan.se. Feature requests can be sent to art@helloryan.se or you can join the
Art Discord and have a chat: https://discord.gg/dCFMwrbNSP.
## Build System ## Build System
@@ -50,12 +54,18 @@ private class members.
Developer documentation will be written to the same directory as the Developer documentation will be written to the same directory as the
public documentation, i.e. `$out_root$/docs`. public documentation, i.e. `$out_root$/docs`.
Developer documentation is built nightly from `master` and can be found
at: https://docs.helloryan.se/libart-paperback/.
## GitHub Pull Requests ## GitHub Pull Requests
Pull requests on GitHub will definitely be ignored. Pull requests on GitHub will definitely be ignored.
[build-badge]: https://code.helloryan.se/art/libart-paperback/actions/workflows/on-push.yaml/badge.svg [build-badge]: https://code.helloryan.se/art/libart-paperback/actions/workflows/on-push.yaml/badge.svg
[docs-badge]: https://code.helloryan.se/art/libart-paperback/actions/workflows/publish-docs-nightly.yaml/badge.svg
[license-badge]: https://img.shields.io/badge/License-BSD_4--Clause-orange [license-badge]: https://img.shields.io/badge/License-BSD_4--Clause-orange
[sponsor-badge]: https://img.shields.io/badge/Sponsor-Patreon-green [sponsor-badge]: https://img.shields.io/badge/Sponsor-Patreon-green?logo=patreon&logoColor=white
[language-badge]: https://img.shields.io/badge/Language-C++-blue [language-badge]: https://img.shields.io/badge/Language-C++-blue?logo=cplusplus&logoColor=white
[build2-badge]: https://img.shields.io/badge/Powered_by-build2-red [build2-badge]: https://img.shields.io/badge/Powered_by-build2-red
[made-with-love-badge]: https://img.shields.io/badge/Made_with_%E2%9D%A4%EF%B8%8F_by-RYAN-red
[discord-badge]: https://img.shields.io/discord/1444936129718522024?logo=discord&logoColor=white&label=Discord&color=blue

View File

@@ -27,12 +27,14 @@ namespace Art::Paperback::Carousel
Text:: Text::
Text(Text const& other) Text(Text const& other)
: _data{other._data} : _convention{other._convention},
_data{other._data}
{} {}
Text:: Text::
Text(Text&& other) Text(Text&& other)
: _data{std::move(other._data)} : _convention{other._convention},
_data{std::move(other._data)}
{} {}
Text:: Text::

View File

@@ -192,7 +192,7 @@ namespace Art::Paperback::Graphics
/// ///
void void
Canvas:: Canvas::
set_stroke(RGB const& color) set_stroke(Color_RGB const& color)
{ {
internal->write(color.red()); internal->write(color.red());
internal->write(' '); internal->write(' ');
@@ -210,7 +210,7 @@ namespace Art::Paperback::Graphics
/// ///
void void
Canvas:: Canvas::
set_fill(RGB const& color) set_fill(Color_RGB const& color)
{ {
internal->write(color.red()); internal->write(color.red());
internal->write(' '); internal->write(' ');

View File

@@ -64,12 +64,12 @@ namespace Art::Paperback::Graphics
/// Set stroke RGB color. /// Set stroke RGB color.
/// ///
void void
set_stroke(RGB const&); set_stroke(Color_RGB const&);
/// Set fill RGB color. /// Set fill RGB color.
/// ///
void void
set_fill(RGB const&); set_fill(Color_RGB const&);
class Path; class Path;
friend Path; friend Path;

View File

@@ -3,33 +3,33 @@
namespace Art::Paperback::Graphics namespace Art::Paperback::Graphics
{ {
RGB:: Color_RGB::
RGB() Color_RGB()
{} {}
/// \param red The red component. /// \param red The red component.
/// \param green The green component. /// \param green The green component.
/// \param blue The blue component. /// \param blue The blue component.
RGB:: Color_RGB::
RGB(double red, double green, double blue) Color_RGB(double red, double green, double blue)
: _red{red}, : _red{red},
_green{green}, _green{green},
_blue{blue} _blue{blue}
{} {}
/// \param other The RGB to copy from. /// \param other The Color_RGB to copy from.
/// ///
RGB:: Color_RGB::
RGB(RGB const& other) Color_RGB(Color_RGB const& other)
: _red{other._red}, : _red{other._red},
_green{other._green}, _green{other._green},
_blue{other._blue} _blue{other._blue}
{} {}
/// \param other The RGB to move from. /// \param other The Color_RGB to move from.
/// ///
RGB:: Color_RGB::
RGB(RGB&& other) Color_RGB(Color_RGB&& other)
: _red{other._red}, : _red{other._red},
_green{other._green}, _green{other._green},
_blue{other._blue} _blue{other._blue}
@@ -38,7 +38,7 @@ namespace Art::Paperback::Graphics
/// \return Returns the red component. /// \return Returns the red component.
/// ///
double double
RGB:: Color_RGB::
red() const red() const
{ {
return _red; return _red;
@@ -47,7 +47,7 @@ namespace Art::Paperback::Graphics
/// \return Returns the green component. /// \return Returns the green component.
/// ///
double double
RGB:: Color_RGB::
green() const green() const
{ {
return _green; return _green;
@@ -56,17 +56,17 @@ namespace Art::Paperback::Graphics
/// \return Returns the blue component. /// \return Returns the blue component.
/// ///
double double
RGB:: Color_RGB::
blue() const blue() const
{ {
return _blue; return _blue;
} }
/// \param other The RGB to copy from. /// \param other The Color_RGB to copy from.
/// ///
RGB& Color_RGB&
RGB:: Color_RGB::
operator=(RGB const& other) operator=(Color_RGB const& other)
{ {
_red = other._red; _red = other._red;
_green = other._green; _green = other._green;
@@ -75,11 +75,11 @@ namespace Art::Paperback::Graphics
return *this; return *this;
} }
/// \param other The RGB to move from. /// \param other The Color_RGB to move from.
/// ///
RGB& Color_RGB&
RGB:: Color_RGB::
operator=(RGB&& other) operator=(Color_RGB&& other)
{ {
_red = other._red; _red = other._red;
_green = other._green; _green = other._green;

View File

@@ -22,24 +22,24 @@ namespace Art::Paperback::Graphics
/// Represents an RGB color value. /// Represents an RGB color value.
/// ///
class RGB class Color_RGB
{ {
public: public:
/// Constructor. /// Constructor.
/// ///
RGB(); Color_RGB();
/// Constructor. /// Constructor.
/// ///
RGB(RGB const&); Color_RGB(Color_RGB const&);
/// Constructor. /// Constructor.
/// ///
RGB(RGB&&); Color_RGB(Color_RGB&&);
/// Constructor. /// Constructor.
/// ///
RGB(double, double, double); Color_RGB(double, double, double);
/// Access red component. /// Access red component.
/// ///
@@ -58,13 +58,13 @@ namespace Art::Paperback::Graphics
/// Assignment. /// Assignment.
/// ///
RGB& Color_RGB&
operator=(RGB const&); operator=(Color_RGB const&);
/// Assignment. /// Assignment.
/// ///
RGB& Color_RGB&
operator=(RGB&&); operator=(Color_RGB&&);
private: private:
double _red{}; double _red{};

View File

@@ -59,8 +59,8 @@ namespace Art::Paperback::Internals
Graphics::Color_space cs_stroke{Graphics::Color_space::device_grey}; Graphics::Color_space cs_stroke{Graphics::Color_space::device_grey};
Graphics::Color_space cs_fill{Graphics::Color_space::device_grey}; Graphics::Color_space cs_fill{Graphics::Color_space::device_grey};
Graphics::RGB rgb_stroke; Graphics::Color_RGB rgb_stroke;
Graphics::RGB rgb_fill; Graphics::Color_RGB rgb_fill;
double grey_stroke{}; double grey_stroke{};
double grey_fill{}; double grey_fill{};

View File

@@ -3,8 +3,8 @@ summary: libart-paperback project repository
: :
role: prerequisite role: prerequisite
location: https://code.helloryan.se/art/libart-validation.git##HEAD location: ../libart-validation.git##HEAD
: :
role: prerequisite role: prerequisite
location: https://code.helloryan.se/art/libart-unicode.git##HEAD location: ../libart-unicode.git##HEAD