处理标题中的特殊字符
This commit is contained in:
		
							parent
							
								
									dbbd375ed8
								
							
						
					
					
						commit
						7e108247cf
					
				
										
											Binary file not shown.
										
									
								
							| @ -20,6 +20,7 @@ import com.alibaba.fastjson.JSONArray; | |||||||
| import com.alibaba.fastjson.JSONObject; | import com.alibaba.fastjson.JSONObject; | ||||||
| import com.aspose.words.Document; | import com.aspose.words.Document; | ||||||
| import com.aspose.words.SaveFormat; | import com.aspose.words.SaveFormat; | ||||||
|  | import lombok.extern.slf4j.Slf4j; | ||||||
| import org.apache.commons.lang.StringUtils; | import org.apache.commons.lang.StringUtils; | ||||||
| import org.apache.poi.hwpf.HWPFDocument; | import org.apache.poi.hwpf.HWPFDocument; | ||||||
| import org.apache.poi.hwpf.usermodel.*; | import org.apache.poi.hwpf.usermodel.*; | ||||||
| @ -32,6 +33,7 @@ import java.util.*; | |||||||
|  * @Description: |  * @Description: | ||||||
|  * @date 2022/6/30 21:47 |  * @date 2022/6/30 21:47 | ||||||
|  */ |  */ | ||||||
|  | @Slf4j | ||||||
| public class ReadTable { | public class ReadTable { | ||||||
|     //相关文件、存文件名称 |     //相关文件、存文件名称 | ||||||
|     private String version = ""; |     private String version = ""; | ||||||
| @ -253,10 +255,11 @@ public class ReadTable { | |||||||
|                         if (fieldMap.get("标题") != null) { |                         if (fieldMap.get("标题") != null) { | ||||||
|                             title = fieldMap.get("标题").toString(); |                             title = fieldMap.get("标题").toString(); | ||||||
|                         } |                         } | ||||||
|                         title = title + nowPara.text().replace("\r", ""); |                         title = title + nowPara.text().replace("\r", "").replace("\b", "").replace("\t", "").replace("\f", ""); | ||||||
|                         fieldMap.put("标题", title); |                         fieldMap.put("标题", title); | ||||||
|                         fileFieldMap.put("标题", new WordField<>(title)); |                         fileFieldMap.put("标题", new WordField<>(title)); | ||||||
|                         titleover = 1; |                         titleover = 1; | ||||||
|  |                         log.info("识别的标题为:" + title); | ||||||
|                         continue; |                         continue; | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
| @ -559,7 +562,12 @@ public class ReadTable { | |||||||
|             fontName = characterRun.getFontName(); |             fontName = characterRun.getFontName(); | ||||||
|             if (fontName.contains("黑体")) { |             if (fontName.contains("黑体")) { | ||||||
|                 //与文档fontsize标号2倍关系 ,黑体一号 等于 26号size |                 //与文档fontsize标号2倍关系 ,黑体一号 等于 26号size | ||||||
|                 return (characterRun.isBold() && characterRun.getFontSize() == 52) || characterRun.getFontSize() == 44; |                 if (characterRun.isBold() && characterRun.getFontSize() == 52) { | ||||||
|  |                     return true; | ||||||
|  |                 } | ||||||
|  |                 if (characterRun.getFontSize() == 44) { | ||||||
|  |                     return true; | ||||||
|  |                 } | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|         return false; |         return false; | ||||||
|  | |||||||
| @ -119,7 +119,7 @@ public class ReadWordUtil { | |||||||
|                             }); |                             }); | ||||||
|                             jsonObject.put("table", jsonArray); |                             jsonObject.put("table", jsonArray); | ||||||
|                             new CoeProcessLevelWeb(userContext).moreAttrContentSave(id, "term", jsonObject.toJSONString()); |                             new CoeProcessLevelWeb(userContext).moreAttrContentSave(id, "term", jsonObject.toJSONString()); | ||||||
|                         }else if ("组织/角色与职责".equals(key)) { |                         } else if ("组织/角色与职责".equals(key)) { | ||||||
|                             List nowdata = (List) tmp.getData(); |                             List nowdata = (List) tmp.getData(); | ||||||
|                             JSONObject jsonObject = new JSONObject(); |                             JSONObject jsonObject = new JSONObject(); | ||||||
|                             jsonObject.put("name", "组织角色"); |                             jsonObject.put("name", "组织角色"); | ||||||
| @ -221,7 +221,7 @@ public class ReadWordUtil { | |||||||
|             return; |             return; | ||||||
|         } |         } | ||||||
|         //创建图形 |         //创建图形 | ||||||
|         if(iscreatemap){ |         if (iscreatemap) { | ||||||
|             DCContext dcContextpdf1 = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, docxname); |             DCContext dcContextpdf1 = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, docxname); | ||||||
|             InputStream docxfile = SDK.getDCAPI().read(dcContextpdf1); |             InputStream docxfile = SDK.getDCAPI().read(dcContextpdf1); | ||||||
|             new CreateMaps().updateMaps(userContext, wsId, docxfile, title); |             new CreateMaps().updateMaps(userContext, wsId, docxfile, title); | ||||||
| @ -254,7 +254,7 @@ public class ReadWordUtil { | |||||||
|                     if (fieldMap.get("标题") != null) { |                     if (fieldMap.get("标题") != null) { | ||||||
|                         title = fieldMap.get("标题").toString(); |                         title = fieldMap.get("标题").toString(); | ||||||
|                     } |                     } | ||||||
|                     title = title + nowPara.text().replace("\r", "").replace("\b", "").replace("\t", ""); |                     title = title + nowPara.text().replace("\r", "").replace("\b", "").replace("\t", "").replace("\f", ""); | ||||||
|                     fieldMap.put("标题", title); |                     fieldMap.put("标题", title); | ||||||
|                     fileFieldMap.put("标题", new WordField<>(title)); |                     fileFieldMap.put("标题", new WordField<>(title)); | ||||||
|                     titleover = 1; |                     titleover = 1; | ||||||
| @ -382,13 +382,13 @@ public class ReadWordUtil { | |||||||
|                             Table table = range.getTable(paragraph); |                             Table table = range.getTable(paragraph); | ||||||
|                             Map<String, List<String>> verticalTableText = this.getVerticalTableText(table); |                             Map<String, List<String>> verticalTableText = this.getVerticalTableText(table); | ||||||
|                             List<String> strings = null; |                             List<String> strings = null; | ||||||
|                             if(verticalTableText.get("文件")  != null){ |                             if (verticalTableText.get("文件") != null) { | ||||||
|                                 strings = verticalTableText.get("文件"); |                                 strings = verticalTableText.get("文件"); | ||||||
|                             } |                             } | ||||||
|                             if(verticalTableText.get("文件名称")  != null){ |                             if (verticalTableText.get("文件名称") != null) { | ||||||
|                                 strings = verticalTableText.get("文件名称"); |                                 strings = verticalTableText.get("文件名称"); | ||||||
|                             } |                             } | ||||||
|                             if(strings != null){ |                             if (strings != null) { | ||||||
|                                 fileMap.put(wordAttribute.getTitle(), strings); |                                 fileMap.put(wordAttribute.getTitle(), strings); | ||||||
|                                 fileFieldMap.put(wordAttribute.getTitle(), new WordField<>(strings)); |                                 fileFieldMap.put(wordAttribute.getTitle(), new WordField<>(strings)); | ||||||
|                             } |                             } | ||||||
| @ -447,6 +447,7 @@ public class ReadWordUtil { | |||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|      * 将所有的属性解析出来 |      * 将所有的属性解析出来 | ||||||
|  |      * | ||||||
|      * @param tb |      * @param tb | ||||||
|      * @return |      * @return | ||||||
|      */ |      */ | ||||||
| @ -473,9 +474,9 @@ public class ReadWordUtil { | |||||||
|                     } |                     } | ||||||
|                     sb.append(s); |                     sb.append(s); | ||||||
|                 } |                 } | ||||||
|                 key = sb.toString().replaceAll(" ",""); |                 key = sb.toString().replaceAll(" ", ""); | ||||||
|                 //看看是否是键值 |                 //看看是否是键值 | ||||||
|                 if(nameToIdMap.containsKey(key) && result.get(key) == null && j < (tr.numCells()-1)){ |                 if (nameToIdMap.containsKey(key) && result.get(key) == null && j < (tr.numCells() - 1)) { | ||||||
|                     //取得单元格 |                     //取得单元格 | ||||||
|                     j += 1; |                     j += 1; | ||||||
|                     TableCell tdtmp = tr.getCell(j); |                     TableCell tdtmp = tr.getCell(j); | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 chengli
						chengli