Home | History | Annotate | Download | only in include
      1 // Copyright 2014 PDFium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
      6 
      7 #ifndef _FX_LINEBREAK
      8 #define _FX_LINEBREAK
      9 
     10 #include "core/include/fxcrt/fx_system.h"
     11 #include "xfa/src/fgas/include/fx_utl.h"
     12 
     13 enum FX_LINEBREAKTYPE {
     14   FX_LBT_UNKNOWN = 0x00,
     15   FX_LBT_DIRECT_BRK = 0x1A,
     16   FX_LBT_INDIRECT_BRK = 0x2B,
     17   FX_LBT_COM_INDIRECT_BRK = 0x3C,
     18   FX_LBT_COM_PROHIBITED_BRK = 0x4D,
     19   FX_LBT_PROHIBITED_BRK = 0x5E,
     20   FX_LBT_HANGUL_SPACE_BRK = 0x6F,
     21 };
     22 
     23 #define FX_LBUN FX_LBT_UNKNOWN
     24 #define FX_LBDB FX_LBT_DIRECT_BRK
     25 #define FX_LBIB FX_LBT_INDIRECT_BRK
     26 #define FX_LBCB FX_LBT_COM_INDIRECT_BRK
     27 #define FX_LBCP FX_LBT_COM_PROHIBITED_BRK
     28 #define FX_LBPB FX_LBT_PROHIBITED_BRK
     29 #define FX_LBHS FX_LBT_HANGUL_SPACE_BRK
     30 
     31 extern const FX_LINEBREAKTYPE gs_FX_LineBreak_PairTable[64][32];
     32 
     33 void FX_GetLineBreakPositions(const FX_WCHAR* pwsText,
     34                               FX_LINEBREAKTYPE* pBrkType,
     35                               int32_t iLength);
     36 void FX_GetLineBreakPositions(const FX_WCHAR* pwsText,
     37                               int32_t iLength,
     38                               CFX_Int32MassArray& bp);
     39 #endif
     40