All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.dromara.hutool.poi.excel.SimpleClientAnchor Maven / Gradle / Ivy

There is a newer version: 6.0.0.M3
Show newest version
/*
 * Copyright (c) 2013-2024 Hutool Team and hutool.cn
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.dromara.hutool.poi.excel;

import org.apache.poi.ss.usermodel.ClientAnchor;

/**
 * 简单的ClientAnchor实现,此对象表示一个图形或绘图在Excel中的位置和大小,参数表示:
 * 
    *
  • dx1和dy1表示在左上角单元格中的偏移量,col1和row1表示左上角单元格
  • *
  • dx2和dy2表示在右下角单元格中的偏移量,col2和row2表示右下角单元格
  • *
* 图示见:https://www.cnblogs.com/sunyl/p/7527703.html */ public class SimpleClientAnchor implements ClientAnchor { private int dx1; private int dy1; private int dy2; private int dx2; private int col1; private int row1; private int col2; private int row2; private AnchorType anchorType = AnchorType.MOVE_AND_RESIZE; /** * 构造
* 通过定义左上角和右下角的单元格,创建一个ClientAnchor对象
* 默认偏移为0,默认type为: {@link AnchorType#MOVE_AND_RESIZE}. * * @param col1 指定起始的列,下标从0开始 * @param row1 指定起始的行,下标从0开始 * @param col2 指定结束的列,下标从0开始 * @param row2 指定结束的行,下标从0开始 */ public SimpleClientAnchor(final int col1, final int row1, final int col2, final int row2) { this(0, 0, 0, 0, col1, row1, col2, row2); } /** * 构造
* 通过定义左上角和右下角的单元格,以及单元格中的偏移量,创建一个ClientAnchor对象
* 默认type为: {@link AnchorType#MOVE_AND_RESIZE}. * * @param dx1 起始单元格中的x偏移像素 * @param dy1 起始单元格中的y偏移像素 * @param dx2 结束单元格中的x偏移像素 * @param dy2 结束单元格中的y偏移像素 * @param col1 指定起始的列,下标从0开始 * @param row1 指定起始的行,下标从0开始 * @param col2 指定结束的列,下标从0开始 * @param row2 指定结束的行,下标从0开始 */ public SimpleClientAnchor(final int dx1, final int dy1, final int dx2, final int dy2, final int col1, final int row1, final int col2, final int row2) { this.dx1 = dx1; this.dy1 = dy1; this.dx2 = dx2; this.dy2 = dy2; this.col1 = col1; this.row1 = row1; this.col2 = col2; this.row2 = row2; } @Override public int getDx1() { return this.dx1; } @Override public void setDx1(final int dx1) { this.dx1 = dx1; } @Override public int getDy1() { return this.dy1; } @Override public void setDy1(final int dy1) { this.dy1 = dy1; } @Override public int getDx2() { return this.dx2; } @Override public void setDx2(final int dx2) { this.dx2 = dx2; } @Override public int getDy2() { return this.dy2; } @Override public void setDy2(final int dy2) { this.dy2 = dy2; } @Override public short getCol1() { return (short) this.col1; } @Override public void setCol1(final int col1) { this.col1 = col1; } @Override public int getRow1() { return this.row1; } @Override public void setRow1(final int row1) { this.row1 = row1; } @Override public short getCol2() { return (short) this.col2; } @Override public void setCol2(final int col2) { this.col2 = col2; } @Override public int getRow2() { return this.row2; } @Override public void setRow2(final int row2) { this.row2 = row2; } @Override public AnchorType getAnchorType() { return this.anchorType; } @Override public void setAnchorType(final AnchorType anchorType) { this.anchorType = anchorType; } /** * 将当前对象中的值复制到目标对象中 * * @param clientAnchor {@link ClientAnchor} * @return 目标对象 */ public ClientAnchor copyTo(final ClientAnchor clientAnchor) { clientAnchor.setDx1(this.dx1); clientAnchor.setDy1(this.dy1); clientAnchor.setDx2(this.dx2); clientAnchor.setDy2(this.dy2); clientAnchor.setCol1(this.col1); clientAnchor.setRow1(this.row1); clientAnchor.setCol2(this.col2); clientAnchor.setRow2(this.row2); clientAnchor.setAnchorType(this.anchorType); return clientAnchor; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy