Provided by: libmsoffice-word-surgeon-perl_2.10-1_all bug

NAME

       MsOffice::Word::Surgeon::Run - internal representation for a "run of text"

DESCRIPTION

       This is used internally by MsOffice::Word::Surgeon for storing a "run of text" in a MsWord document. It
       loosely corresponds to a "<w:r>" node in OOXML, but may also contain an anonymous XML fragment which is
       the part of the document just before the "<w:r>" node -- used for reconstructing the complete document
       after having changed the contents of some runs.

METHODS

   new
         my $run = MsOffice::Word::Surgeon::Run(
           xml_before  => $xml_string,
           props       => $properties_string,
           inner_texts => [MsOffice::Word::Surgeon::Text(...), ...],
         );

       Constructor for a new run object. Arguments are :

       xml_before
           A  string  containing  arbitrary  XML preceding that run in the complete document.  The string may be
           empty but must be present.

       props
           A string containing XML for the properties of this run (for example instructions  for  bold,  italic,
           font,  etc.).  The  module  does not parse this information; it just compares the string for equality
           with the next run.

       inner_texts
           An array of MsOffice::Word::Surgeon::Text objects, corresponding to the XML "<w:t>" nodes inside  the
           run.

   as_xml
         my $xml = $run->as_xml;

       Returns the XML representation of that run.

   merge
         $run->merge($next_run);

       Merge  the  contents of $next_run together with the current run.  This is only possible if both runs have
       the same properties (same string returned by the "props" method), and  if  the  next  run  has  an  empty
       "xml_before" attribute; if the conditions are not met, an exception is raised.

   replace
         my $xml = $run->replace($pattern, $replacement_callback, %replacement_args);

       Replaces   all   occurrences   of   $pattern   within  all  text  nodes  by  a  new  string  computed  by
       $replacement_callback,  and  returns  a  new  xml  string  corresponding  to  the  result  of  all  these
       replacements.    This    is    the    internal    implementation   for   public   method   "replace"   in
       MsOffice::Word::Surgeon::PackagePart.

   remove_caps_property
       Searches in the run properties for a "<w:caps/>" property; if found, removes it, and replaces  all  inner
       texts by their uppercase equivalents.

AUTHOR

       Laurent Dami, <dami AT cpan DOT org<gt>

COPYRIGHT AND LICENSE

       Copyright 2019-2024 by Laurent Dami.

       This  program  is free software, you can redistribute it and/or modify it under the terms of the Artistic
       License version 2.0.

perl v5.40.1                                       2025-05-16                  MsOffice::Word::Surgeon::Run(3pm)