|
|
@ -16,6 +16,7 @@ class BookPageImpl;
|
|
|
|
|
|
|
|
|
|
|
|
static bool ucsSpace (int codePoint);
|
|
|
|
static bool ucsSpace (int codePoint);
|
|
|
|
static bool ucsLineBreak (int codePoint);
|
|
|
|
static bool ucsLineBreak (int codePoint);
|
|
|
|
|
|
|
|
static bool ucsCarriageReturn (int codePoint);
|
|
|
|
static bool ucsBreakingSpace (int codePoint);
|
|
|
|
static bool ucsBreakingSpace (int codePoint);
|
|
|
|
|
|
|
|
|
|
|
|
struct BookTypesetter::Style { virtual ~Style () {} };
|
|
|
|
struct BookTypesetter::Style { virtual ~Style () {} };
|
|
|
@ -1188,6 +1189,9 @@ public:
|
|
|
|
{
|
|
|
|
{
|
|
|
|
Utf8Stream::UnicodeChar code_point = stream.consume ();
|
|
|
|
Utf8Stream::UnicodeChar code_point = stream.consume ();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (ucsCarriageReturn (code_point))
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
|
|
|
|
if (!ucsSpace (code_point))
|
|
|
|
if (!ucsSpace (code_point))
|
|
|
|
glyphStream.emitGlyph (code_point);
|
|
|
|
glyphStream.emitGlyph (code_point);
|
|
|
|
else
|
|
|
|
else
|
|
|
@ -1331,6 +1335,11 @@ static bool ucsLineBreak (int codePoint)
|
|
|
|
return codePoint == '\n';
|
|
|
|
return codePoint == '\n';
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static bool ucsCarriageReturn (int codePoint)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return codePoint == '\r';
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
static bool ucsSpace (int codePoint)
|
|
|
|
static bool ucsSpace (int codePoint)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
switch (codePoint)
|
|
|
|
switch (codePoint)
|
|
|
|