---
title: Split PDF V2
description: Split PDF files into individual pages, a page range, or fixed-size page chunks.
category: File Transformations
tags: [pdf, split, pages, files]
---

# Split PDF V2

## **Description**

The **Split PDF V2** activity splits one or more PDF files into smaller PDF files. It supports splitting every page, splitting a selected page range into individual page files, or splitting the document into fixed-size page chunks.

### **Supported Features**

- **All pages mode**: Creates one PDF per page.
- **Range pages mode**: Creates one PDF per page inside a configured start/end range.
- **Chunk mode**: Creates one PDF per chunk of pages.
- **Chunk range mode**: Applies chunking only within a configured page range.
- **Multiple input files**: Processes each file independently.
- **Partial success**: Returns created files even when some files or pages fail.

---

## **Input**

| Type | Required | Description |
| --- | --- | --- |
| Files | Yes | PDF files to split. |

### **Input Scenarios**

#### **1. Split Every Page**

```json
{
  "Files": [
    { "FileName": "catalog.pdf", "FullPath": "C:/Work/catalog.pdf" }
  ]
}
```

#### **2. Split A Page Range**

Use `RangePages` with `StartPage` and `EndPage`.

#### **3. Split Into Chunks**

Use `Chunk` with `ChunkSize`. Optionally enable `SplitByRange` to chunk only part of the file.

---

## **Output**

| Field | Type | Description |
| --- | --- | --- |
| Files | Array | Split PDF files created by the activity. |
| Errors | Array | Errors for invalid ranges, failed pages, failed chunks, or failed files. |

### **Output File Names**

- **AllPages**: `<original>_Page_<pageNumber>.pdf`
- **RangePages**: `<original>_Page_<pageNumber>.pdf`
- **Chunk**: `<original>_Chunk_<chunkNumber>.pdf`

### **Example Output**

```json
{
  "Files": [
    {
      "FileName": "catalog_Page_1.pdf",
      "FullPath": "C:/Work/catalog_Page_1.pdf",
      "Size": 12345
    },
    {
      "FileName": "catalog_Page_2.pdf",
      "FullPath": "C:/Work/catalog_Page_2.pdf",
      "Size": 11820
    }
  ],
  "Errors": []
}
```

---

## **Configuration Fields**

| Field Name | Type | Required | Description |
| --- | --- | --- | --- |
| Split mode | Dropdown | Yes | Split strategy. Options: `AllPages`, `RangePages`, `Chunk`. Default is `RangePages`. |
| Start page | Number | Conditional | First page to split when `Mode` is `RangePages`. Pages are 1-based. |
| End page | Number | Conditional | Last page to split when `Mode` is `RangePages`. If greater than the document page count, it is capped to the last page. |
| Chunk size | Number | Conditional | Number of pages per output file when `Mode` is `Chunk`. Values less than 1 are treated as 1 by execution logic. |
| Split by range | Boolean | Conditional | Available in `Chunk` mode. When enabled, chunking is limited to `StartingPage` through `EndingPage`. |
| Start page | Number | Conditional | First page of the chunking range when `SplitByRange` is enabled. |
| End page | Number | Conditional | Last page of the chunking range when `SplitByRange` is enabled. |

### **Conditional Field Rendering Rules**

- **Start page** and **End page** are shown when **Split mode** is `RangePages`.
- **Chunk size** and **Split by range** are shown when **Split mode** is `Chunk`.
- The chunk range **Start page** and **End page** are shown when **Split by range** is `true`.

---

## **Sample Configurations**

### **Scenario 1: One File Per Page**

| Field | Value |
| --- | --- |
| Split mode | `AllPages` |

### **Scenario 2: Pages 2 Through 5**

| Field | Value |
| --- | --- |
| Split mode | `RangePages` |
| Start page | `2` |
| End page | `5` |

### **Scenario 3: Three-Page Chunks**

| Field | Value |
| --- | --- |
| Split mode | `Chunk` |
| Chunk size | `3` |
| Split by range | `false` |

---

## **Sample Output**

```json
{
  "Files": [
    { "FileName": "catalog_Chunk_1.pdf", "FullPath": "C:/Work/catalog_Chunk_1.pdf", "Size": 30440 },
    { "FileName": "catalog_Chunk_2.pdf", "FullPath": "C:/Work/catalog_Chunk_2.pdf", "Size": 28810 }
  ],
  "Errors": []
}
```
