CKeditor 붙여넣기 캡처
21583 단어 CKeditor
CKeditor 붙여넣기 캡처
CKeditor는 기본적으로 캡처 붙여넣기를 지원하지만, 우리가 설정해야 합니다
1. CKeditor 구성
CKeditor의 config.js에 다음 설정 추가//
config.uploadUrl="/home/uploadPasteImage";
//
config.extraPlugins="imagepaste";
2. 백그라운드 코드
@PostMapping(value = "/uploadPasteImage")
public String uploadPasteImage(@RequestParam("upload") MultipartFile[] file, HttpServletRequest request,
HttpServletResponse response, HttpSession session) {
LOG.info(" ...");
response.setCharacterEncoding("UTF-8");
String result = "";
try {
for (int i = 0; i < file.length; i++) {
// ,
String fileName = ImageUtil.uploadImage(imgTempSavePath, file[i]);
//
String imgUrl = imgVisitPath+fileName;
// json
result = "{\"uploaded\" : 1, \"fileName\" : \""+fileName+"\", \"url\":\""+imgUrl+"\" }";
LOG.info(" ...");
break;
}
} catch (Exception e) {
LOG.error(" ,error:{}" + e.getMessage());
// json
result = "{\"uploaded\" : 1, \"fileName\" : \"image\", \"url\":\"image\" , \"error\" : { \"message\":\" \" } }";
}
return result;
}
ImageUtil.java import org.apache.tomcat.util.http.fileupload.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
/**
*
**/
public class ImageUtil {
private final static Logger LOG = LoggerFactory.getLogger(ImageUtil.class);
/**
* ,
* @return
*/
public static String uploadImage(String tempSavePath, MultipartFile imgFile) throws Exception {
Date date = new Date();
String fileName = ((Long)date.getTime()).toString() + imgSuffix(imgFile.getOriginalFilename());
FileOutputStream fos = null;
try {
String path = FileUtil.createChildPath();
//
File file = FileUtil.createFile(tempSavePath+path, fileName);
LOG.info(" :{}", file.getName());
fos = new FileOutputStream(file);
IOUtils.copy(imgFile.getInputStream(), fos);
LOG.info(" ");
return path+file.getName();
} catch (IOException ex) {
ex.printStackTrace();
LOG.error(" ");
throw ex;
} catch (Exception ex) {
ex.printStackTrace();
LOG.info(" ");
throw ex;
} finally {
try {
if(fos!=null) {
fos.close();
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
/**
* , , :.jpg
* @param imgName
* @return
*/
public static String imgSuffix(String imgName) {
if(StringUtils.isEmpty(imgName)) {
LOG.error(" ");
throw new RuntimeException(" ");
}
return imgName.substring(imgName.lastIndexOf("."));
}
}
FileUtil.java public class FileUtil {
private final static Logger LOG = LoggerFactory.getLogger(FileUtil.class);
/**
*
* @param parentPath
* @param fileName
* @return
* @throws IOException
*/
public static File createFile(String parentPath, String fileName) {
File parentFile = new File(parentPath);
// ,
if(!parentFile.exists()) {
parentFile.mkdirs();
}
//
File file = new File(parentPath + fileName);
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
LOG.error(" ");
}
return file;
}
}
이때 캡처를 풍부한 텍스트 상자에 직접 붙일 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
CKeditor 와 syntaxhighlight 는 joomla 코드 하 이 라 이 트 를 만 듭 니 다.
다음 에 고 칠 곳 을 붙 여 주세요!(Dreamweaver 로 이 파일 을 열 면 속도 가 빨 라 집 니 다.특히 검색)첫 번 째 js 코드 두 번 째 js 코드 는 이 두 군데 만 가능 합 니 다.코드 의 마지막...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
//
config.uploadUrl="/home/uploadPasteImage";
//
config.extraPlugins="imagepaste";
@PostMapping(value = "/uploadPasteImage")
public String uploadPasteImage(@RequestParam("upload") MultipartFile[] file, HttpServletRequest request,
HttpServletResponse response, HttpSession session) {
LOG.info(" ...");
response.setCharacterEncoding("UTF-8");
String result = "";
try {
for (int i = 0; i < file.length; i++) {
// ,
String fileName = ImageUtil.uploadImage(imgTempSavePath, file[i]);
//
String imgUrl = imgVisitPath+fileName;
// json
result = "{\"uploaded\" : 1, \"fileName\" : \""+fileName+"\", \"url\":\""+imgUrl+"\" }";
LOG.info(" ...");
break;
}
} catch (Exception e) {
LOG.error(" ,error:{}" + e.getMessage());
// json
result = "{\"uploaded\" : 1, \"fileName\" : \"image\", \"url\":\"image\" , \"error\" : { \"message\":\" \" } }";
}
return result;
}
import org.apache.tomcat.util.http.fileupload.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
/**
*
**/
public class ImageUtil {
private final static Logger LOG = LoggerFactory.getLogger(ImageUtil.class);
/**
* ,
* @return
*/
public static String uploadImage(String tempSavePath, MultipartFile imgFile) throws Exception {
Date date = new Date();
String fileName = ((Long)date.getTime()).toString() + imgSuffix(imgFile.getOriginalFilename());
FileOutputStream fos = null;
try {
String path = FileUtil.createChildPath();
//
File file = FileUtil.createFile(tempSavePath+path, fileName);
LOG.info(" :{}", file.getName());
fos = new FileOutputStream(file);
IOUtils.copy(imgFile.getInputStream(), fos);
LOG.info(" ");
return path+file.getName();
} catch (IOException ex) {
ex.printStackTrace();
LOG.error(" ");
throw ex;
} catch (Exception ex) {
ex.printStackTrace();
LOG.info(" ");
throw ex;
} finally {
try {
if(fos!=null) {
fos.close();
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
/**
* , , :.jpg
* @param imgName
* @return
*/
public static String imgSuffix(String imgName) {
if(StringUtils.isEmpty(imgName)) {
LOG.error(" ");
throw new RuntimeException(" ");
}
return imgName.substring(imgName.lastIndexOf("."));
}
}
public class FileUtil {
private final static Logger LOG = LoggerFactory.getLogger(FileUtil.class);
/**
*
* @param parentPath
* @param fileName
* @return
* @throws IOException
*/
public static File createFile(String parentPath, String fileName) {
File parentFile = new File(parentPath);
// ,
if(!parentFile.exists()) {
parentFile.mkdirs();
}
//
File file = new File(parentPath + fileName);
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
LOG.error(" ");
}
return file;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
CKeditor 와 syntaxhighlight 는 joomla 코드 하 이 라 이 트 를 만 듭 니 다.다음 에 고 칠 곳 을 붙 여 주세요!(Dreamweaver 로 이 파일 을 열 면 속도 가 빨 라 집 니 다.특히 검색)첫 번 째 js 코드 두 번 째 js 코드 는 이 두 군데 만 가능 합 니 다.코드 의 마지막...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.